Ctrl K
ComunidadGuías…

schema.yml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
openapi: 3.0.3
info:
  title: authentik
  version: 2026.11.0-rc1
  description: Making authentication simple.
  contact:
    email: hello@goauthentik.io
  license:
    name: MIT
    url: https://github.com/goauthentik/authentik/blob/main/LICENSE
paths:
  /admin/apps/:
    get:
      operationId: admin_apps_list
      description: Read-only view list all installed apps
      tags:
      - admin
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/App'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /admin/file/:
    get:
      operationId: admin_file_list
      description: List files from storage backend.
      parameters:
      - in: query
        name: manageable_only
        schema:
          type: boolean
          default: false
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: usage
        schema:
          allOf:
          - $ref: '#/components/schemas/UsageEnum'
          default: media
          minLength: 1
      tags:
      - admin
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FileList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: admin_file_create
      description: Upload file to storage backend.
      tags:
      - admin
      requestBody:
        content:
          multipart/form-data:
            schema:
              $ref: '#/components/schemas/FileUploadRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: admin_file_destroy
      description: Delete file from storage backend.
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - in: query
        name: usage
        schema:
          allOf:
          - $ref: '#/components/schemas/UsageEnum'
          default: media
          minLength: 1
      tags:
      - admin
      security:
      - authentik: []
      responses:
        '200':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /admin/file/used_by/:
    get:
      operationId: admin_file_used_by_list
      parameters:
      - $ref: '#/components/parameters/QueryName'
      tags:
      - admin
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /admin/models/:
    get:
      operationId: admin_models_list
      description: Read-only view list all installed models
      parameters:
      - in: query
        name: filter_has_attributes
        schema:
          type: boolean
          nullable: true
      tags:
      - admin
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/App'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /admin/settings/:
    get:
      operationId: admin_settings_retrieve
      description: Settings view
      tags:
      - admin
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Settings'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: admin_settings_update
      description: Settings view
      tags:
      - admin
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SettingsRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Settings'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: admin_settings_partial_update
      description: Settings view
      tags:
      - admin
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedSettingsRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Settings'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /admin/system/:
    get:
      operationId: admin_system_retrieve
      description: Get system information.
      tags:
      - admin
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SystemInfo'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: admin_system_create
      description: Get system information.
      tags:
      - admin
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SystemInfo'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /admin/version/:
    get:
      operationId: admin_version_retrieve
      description: Get running and latest version.
      tags:
      - admin
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Version'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /admin/version/history/:
    get:
      operationId: admin_version_history_list
      description: VersionHistory Viewset
      parameters:
      - in: query
        name: build
        schema:
          type: string
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: version
        schema:
          type: string
      tags:
      - admin
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/VersionHistory'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /admin/version/history/{id}/:
    get:
      operationId: admin_version_history_retrieve
      description: VersionHistory Viewset
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Version history.
        required: true
      tags:
      - admin
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VersionHistory'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /agents/agents/:
    get:
      operationId: agents_agents_list
      description: |-
        Admin-provisioned delegate identities. An admin creates a Agent for a given
        parent user, then grants it access the same way as any other User -- ordinary
        PolicyBindings pointed at whatever it needs.
      parameters:
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - in: query
        name: parent
        schema:
          type: integer
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - agents
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedAgentList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: agents_agents_create
      description: |-
        Admin-provisioned delegate identities. An admin creates a Agent for a given
        parent user, then grants it access the same way as any other User -- ordinary
        PolicyBindings pointed at whatever it needs.
      tags:
      - agents
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AgentCreateRequest'
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentCreated'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /agents/agents/{id}/:
    get:
      operationId: agents_agents_retrieve
      description: |-
        Admin-provisioned delegate identities. An admin creates a Agent for a given
        parent user, then grants it access the same way as any other User -- ordinary
        PolicyBindings pointed at whatever it needs.
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Agent.
        required: true
      tags:
      - agents
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agent'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: agents_agents_update
      description: |-
        Admin-provisioned delegate identities. An admin creates a Agent for a given
        parent user, then grants it access the same way as any other User -- ordinary
        PolicyBindings pointed at whatever it needs.
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Agent.
        required: true
      tags:
      - agents
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AgentRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agent'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: agents_agents_partial_update
      description: |-
        Admin-provisioned delegate identities. An admin creates a Agent for a given
        parent user, then grants it access the same way as any other User -- ordinary
        PolicyBindings pointed at whatever it needs.
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Agent.
        required: true
      tags:
      - agents
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedAgentRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Agent'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: agents_agents_destroy
      description: |-
        Admin-provisioned delegate identities. An admin creates a Agent for a given
        parent user, then grants it access the same way as any other User -- ordinary
        PolicyBindings pointed at whatever it needs.
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Agent.
        required: true
      tags:
      - agents
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/all/:
    get:
      operationId: authenticators_admin_all_list
      description: Get all devices for current user
      parameters:
      - in: query
        name: user
        schema:
          type: integer
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Device'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/duo/:
    get:
      operationId: authenticators_admin_duo_list
      description: Viewset for Duo authenticator devices (for admins)
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedDuoDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: authenticators_admin_duo_create
      description: Viewset for Duo authenticator devices (for admins)
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DuoDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DuoDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/duo/{id}/:
    get:
      operationId: authenticators_admin_duo_retrieve
      description: Viewset for Duo authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Duo Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DuoDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_admin_duo_update
      description: Viewset for Duo authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Duo Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DuoDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DuoDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_admin_duo_partial_update
      description: Viewset for Duo authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Duo Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedDuoDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DuoDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_admin_duo_destroy
      description: Viewset for Duo authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Duo Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/email/:
    get:
      operationId: authenticators_admin_email_list
      description: Viewset for email authenticator devices (for admins)
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedEmailDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: authenticators_admin_email_create
      description: Viewset for email authenticator devices (for admins)
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EmailDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmailDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/email/{id}/:
    get:
      operationId: authenticators_admin_email_retrieve
      description: Viewset for email authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Email Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmailDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_admin_email_update
      description: Viewset for email authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Email Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EmailDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmailDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_admin_email_partial_update
      description: Viewset for email authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Email Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedEmailDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmailDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_admin_email_destroy
      description: Viewset for email authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Email Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/endpoint/:
    get:
      operationId: authenticators_admin_endpoint_list
      description: Viewset for Endpoint authenticator devices (for admins)
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedGoogleEndpointDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: authenticators_admin_endpoint_create
      description: Viewset for Endpoint authenticator devices (for admins)
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoogleEndpointDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleEndpointDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/endpoint/{uuid}/:
    get:
      operationId: authenticators_admin_endpoint_retrieve
      description: Viewset for Endpoint authenticator devices (for admins)
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Endpoint Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleEndpointDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_admin_endpoint_update
      description: Viewset for Endpoint authenticator devices (for admins)
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Endpoint Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoogleEndpointDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleEndpointDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_admin_endpoint_partial_update
      description: Viewset for Endpoint authenticator devices (for admins)
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Endpoint Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedGoogleEndpointDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleEndpointDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_admin_endpoint_destroy
      description: Viewset for Endpoint authenticator devices (for admins)
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Endpoint Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/sms/:
    get:
      operationId: authenticators_admin_sms_list
      description: Viewset for sms authenticator devices (for admins)
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedSMSDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: authenticators_admin_sms_create
      description: Viewset for sms authenticator devices (for admins)
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SMSDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SMSDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/sms/{id}/:
    get:
      operationId: authenticators_admin_sms_retrieve
      description: Viewset for sms authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this SMS Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SMSDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_admin_sms_update
      description: Viewset for sms authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this SMS Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SMSDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SMSDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_admin_sms_partial_update
      description: Viewset for sms authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this SMS Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedSMSDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SMSDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_admin_sms_destroy
      description: Viewset for sms authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this SMS Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/static/:
    get:
      operationId: authenticators_admin_static_list
      description: Viewset for static authenticator devices (for admins)
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedStaticDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: authenticators_admin_static_create
      description: Viewset for static authenticator devices (for admins)
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StaticDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StaticDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/static/{id}/:
    get:
      operationId: authenticators_admin_static_retrieve
      description: Viewset for static authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Static Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StaticDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_admin_static_update
      description: Viewset for static authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Static Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StaticDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StaticDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_admin_static_partial_update
      description: Viewset for static authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Static Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedStaticDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StaticDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_admin_static_destroy
      description: Viewset for static authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Static Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/totp/:
    get:
      operationId: authenticators_admin_totp_list
      description: Viewset for totp authenticator devices (for admins)
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedTOTPDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: authenticators_admin_totp_create
      description: Viewset for totp authenticator devices (for admins)
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TOTPDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TOTPDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/totp/{id}/:
    get:
      operationId: authenticators_admin_totp_retrieve
      description: Viewset for totp authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this TOTP Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TOTPDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_admin_totp_update
      description: Viewset for totp authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this TOTP Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TOTPDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TOTPDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_admin_totp_partial_update
      description: Viewset for totp authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this TOTP Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedTOTPDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TOTPDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_admin_totp_destroy
      description: Viewset for totp authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this TOTP Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/webauthn/:
    get:
      operationId: authenticators_admin_webauthn_list
      description: Viewset for WebAuthn authenticator devices (for admins)
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedWebAuthnDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: authenticators_admin_webauthn_create
      description: Viewset for WebAuthn authenticator devices (for admins)
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebAuthnDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebAuthnDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/admin/webauthn/{id}/:
    get:
      operationId: authenticators_admin_webauthn_retrieve
      description: Viewset for WebAuthn authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this WebAuthn Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebAuthnDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_admin_webauthn_update
      description: Viewset for WebAuthn authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this WebAuthn Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebAuthnDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebAuthnDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_admin_webauthn_partial_update
      description: Viewset for WebAuthn authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this WebAuthn Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedWebAuthnDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebAuthnDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_admin_webauthn_destroy
      description: Viewset for WebAuthn authenticator devices (for admins)
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this WebAuthn Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/all/:
    get:
      operationId: authenticators_all_list
      description: Get all devices for current user
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Device'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/duo/:
    get:
      operationId: authenticators_duo_list
      description: Viewset for Duo authenticator devices
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedDuoDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/duo/{id}/:
    get:
      operationId: authenticators_duo_retrieve
      description: Viewset for Duo authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Duo Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DuoDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_duo_update
      description: Viewset for Duo authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Duo Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DuoDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DuoDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_duo_partial_update
      description: Viewset for Duo authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Duo Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedDuoDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DuoDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_duo_destroy
      description: Viewset for Duo authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Duo Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/duo/{id}/used_by/:
    get:
      operationId: authenticators_duo_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Duo Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/email/:
    get:
      operationId: authenticators_email_list
      description: Viewset for email authenticator devices
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedEmailDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/email/{id}/:
    get:
      operationId: authenticators_email_retrieve
      description: Viewset for email authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Email Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmailDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_email_update
      description: Viewset for email authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Email Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EmailDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmailDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_email_partial_update
      description: Viewset for email authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Email Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedEmailDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EmailDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_email_destroy
      description: Viewset for email authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Email Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/email/{id}/used_by/:
    get:
      operationId: authenticators_email_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Email Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/endpoint/:
    get:
      operationId: authenticators_endpoint_list
      description: Viewset for Endpoint authenticator devices
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedGoogleEndpointDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/endpoint/{uuid}/:
    get:
      operationId: authenticators_endpoint_retrieve
      description: Viewset for Endpoint authenticator devices
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Endpoint Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleEndpointDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/endpoint/{uuid}/used_by/:
    get:
      operationId: authenticators_endpoint_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Endpoint Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/password/{id}/lock/:
    post:
      operationId: authenticators_password_lock_create
      description: Prevent a password authenticator from authenticating.
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Password Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: Successfully locked authenticator
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/password/{id}/unlock/:
    post:
      operationId: authenticators_password_unlock_create
      description: Allow a locked password authenticator to authenticate again.
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Password Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: Successfully unlocked authenticator
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/sms/:
    get:
      operationId: authenticators_sms_list
      description: Viewset for sms authenticator devices
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedSMSDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/sms/{id}/:
    get:
      operationId: authenticators_sms_retrieve
      description: Viewset for sms authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this SMS Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SMSDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_sms_update
      description: Viewset for sms authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this SMS Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SMSDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SMSDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_sms_partial_update
      description: Viewset for sms authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this SMS Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedSMSDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SMSDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_sms_destroy
      description: Viewset for sms authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this SMS Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/sms/{id}/used_by/:
    get:
      operationId: authenticators_sms_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this SMS Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/static/:
    get:
      operationId: authenticators_static_list
      description: Viewset for static authenticator devices
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedStaticDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/static/{id}/:
    get:
      operationId: authenticators_static_retrieve
      description: Viewset for static authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Static Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StaticDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_static_update
      description: Viewset for static authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Static Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StaticDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StaticDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_static_partial_update
      description: Viewset for static authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Static Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedStaticDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StaticDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_static_destroy
      description: Viewset for static authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Static Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/static/{id}/used_by/:
    get:
      operationId: authenticators_static_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this Static Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/totp/:
    get:
      operationId: authenticators_totp_list
      description: Viewset for totp authenticator devices
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedTOTPDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/totp/{id}/:
    get:
      operationId: authenticators_totp_retrieve
      description: Viewset for totp authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this TOTP Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TOTPDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_totp_update
      description: Viewset for totp authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this TOTP Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TOTPDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TOTPDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_totp_partial_update
      description: Viewset for totp authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this TOTP Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedTOTPDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TOTPDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_totp_destroy
      description: Viewset for totp authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this TOTP Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/totp/{id}/used_by/:
    get:
      operationId: authenticators_totp_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this TOTP Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/webauthn/:
    get:
      operationId: authenticators_webauthn_list
      description: Viewset for WebAuthn authenticator devices
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedWebAuthnDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/webauthn/{id}/:
    get:
      operationId: authenticators_webauthn_retrieve
      description: Viewset for WebAuthn authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this WebAuthn Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebAuthnDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: authenticators_webauthn_update
      description: Viewset for WebAuthn authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this WebAuthn Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/WebAuthnDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebAuthnDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: authenticators_webauthn_partial_update
      description: Viewset for WebAuthn authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this WebAuthn Device.
        required: true
      tags:
      - authenticators
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedWebAuthnDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WebAuthnDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: authenticators_webauthn_destroy
      description: Viewset for WebAuthn authenticator devices
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this WebAuthn Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /authenticators/webauthn/{id}/used_by/:
    get:
      operationId: authenticators_webauthn_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this WebAuthn Device.
        required: true
      tags:
      - authenticators
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/application_entitlements/:
    get:
      operationId: core_application_entitlements_list
      description: ApplicationEntitlement Viewset
      parameters:
      - in: query
        name: app
        schema:
          type: string
          format: uuid
      - in: query
        name: for_user
        schema:
          type: integer
        description: Entitlements assigned to this user, directly or through a group,
          regardless of the user's access to the application.
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - in: query
        name: pbm_uuid
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedApplicationEntitlementList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: core_application_entitlements_create
      description: ApplicationEntitlement Viewset
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApplicationEntitlementRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicationEntitlement'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/application_entitlements/{pbm_uuid}/:
    get:
      operationId: core_application_entitlements_retrieve
      description: ApplicationEntitlement Viewset
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Application Entitlement.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicationEntitlement'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: core_application_entitlements_update
      description: ApplicationEntitlement Viewset
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Application Entitlement.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApplicationEntitlementRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicationEntitlement'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: core_application_entitlements_partial_update
      description: ApplicationEntitlement Viewset
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Application Entitlement.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedApplicationEntitlementRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicationEntitlement'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: core_application_entitlements_destroy
      description: ApplicationEntitlement Viewset
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Application Entitlement.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/application_entitlements/{pbm_uuid}/used_by/:
    get:
      operationId: core_application_entitlements_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Application Entitlement.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/application_entitlements/requestable/:
    get:
      operationId: core_application_entitlements_requestable_list
      description: List application entitlements which the current user can request
        access to
      parameters:
      - in: query
        name: app
        schema:
          type: string
          format: uuid
      - in: query
        name: for_user
        schema:
          type: integer
        description: Entitlements assigned to this user, directly or through a group,
          regardless of the user's access to the application.
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - in: query
        name: pbm_uuid
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedRequestableTargetList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/applications/:
    get:
      operationId: core_applications_list
      description: Application Viewset
      parameters:
      - in: query
        name: group
        schema:
          type: string
      - in: query
        name: meta_description
        schema:
          type: string
      - in: query
        name: meta_launch_url
        schema:
          type: string
      - in: query
        name: meta_publisher
        schema:
          type: string
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: slug
        schema:
          type: string
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedApplicationList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: core_applications_create
      description: Application Viewset
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApplicationRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Application'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/applications/{slug}/:
    get:
      operationId: core_applications_retrieve
      description: Application Viewset
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Internal application name, used in URLs.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Application'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: core_applications_update
      description: Application Viewset
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Internal application name, used in URLs.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApplicationRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Application'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: core_applications_partial_update
      description: Application Viewset
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Internal application name, used in URLs.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedApplicationRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Application'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: core_applications_destroy
      description: Application Viewset
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Internal application name, used in URLs.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/applications/{slug}/check_access/:
    get:
      operationId: core_applications_check_access_retrieve
      description: Check access to a single application by slug
      parameters:
      - in: query
        name: for_user
        schema:
          type: integer
      - in: path
        name: slug
        schema:
          type: string
          description: Internal application name, used in URLs.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PolicyTestResult'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/applications/{slug}/used_by/:
    get:
      operationId: core_applications_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Internal application name, used in URLs.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/applications/@accessible/:
    get:
      operationId: core_applications_accessible_list
      description: List applications the user passes policies for, regardless of RBAC
        permissions
      parameters:
      - in: query
        name: for_user
        schema:
          type: integer
      - in: query
        name: group
        schema:
          type: string
      - in: query
        name: meta_description
        schema:
          type: string
      - in: query
        name: meta_launch_url
        schema:
          type: string
      - in: query
        name: meta_publisher
        schema:
          type: string
      - $ref: '#/components/parameters/QueryName'
      - in: query
        name: only_with_launch_url
        schema:
          type: boolean
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: slug
        schema:
          type: string
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedApplicationList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/applications/requestable/:
    get:
      operationId: core_applications_requestable_list
      description: List applications which the current user can request access to
      parameters:
      - in: query
        name: group
        schema:
          type: string
      - in: query
        name: meta_description
        schema:
          type: string
      - in: query
        name: meta_launch_url
        schema:
          type: string
      - in: query
        name: meta_publisher
        schema:
          type: string
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: slug
        schema:
          type: string
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedApplicationList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/authenticated_sessions/:
    get:
      operationId: core_authenticated_sessions_list
      description: AuthenticatedSession Viewset
      parameters:
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: session__last_ip
        schema:
          type: string
      - in: query
        name: session__last_user_agent
        schema:
          type: string
      - in: query
        name: user__username
        schema:
          type: string
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedAuthenticatedSessionList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/authenticated_sessions/{uuid}/:
    get:
      operationId: core_authenticated_sessions_retrieve
      description: AuthenticatedSession Viewset
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuthenticatedSession'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: core_authenticated_sessions_destroy
      description: AuthenticatedSession Viewset
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/authenticated_sessions/{uuid}/used_by/:
    get:
      operationId: core_authenticated_sessions_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/authenticated_sessions/bulk_delete/:
    delete:
      operationId: core_authenticated_sessions_bulk_delete_destroy
      description: Bulk revoke all sessions for multiple users
      parameters:
      - in: query
        name: user_pks
        schema:
          type: array
          items:
            type: integer
        description: List of user IDs to revoke all sessions for
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkDeleteSessionResponse'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/brands/:
    get:
      operationId: core_brands_list
      description: Brand Viewset
      parameters:
      - in: query
        name: brand_uuid
        schema:
          type: string
          format: uuid
      - in: query
        name: branding_default_flow_background
        schema:
          type: string
      - in: query
        name: branding_favicon
        schema:
          type: string
      - in: query
        name: branding_logo
        schema:
          type: string
      - in: query
        name: branding_title
        schema:
          type: string
      - in: query
        name: client_certificates
        schema:
          type: array
          items:
            type: string
            format: uuid
        explode: true
        style: form
      - in: query
        name: default
        schema:
          type: boolean
      - in: query
        name: domain
        schema:
          type: string
      - in: query
        name: flow_authentication
        schema:
          type: string
          format: uuid
      - in: query
        name: flow_device_code
        schema:
          type: string
          format: uuid
      - in: query
        name: flow_invalidation
        schema:
          type: string
          format: uuid
      - in: query
        name: flow_lockdown
        schema:
          type: string
          format: uuid
      - in: query
        name: flow_recovery
        schema:
          type: string
          format: uuid
      - in: query
        name: flow_request
        schema:
          type: string
          format: uuid
      - in: query
        name: flow_unenrollment
        schema:
          type: string
          format: uuid
      - in: query
        name: flow_user_settings
        schema:
          type: string
          format: uuid
      - in: query
        name: flow_user_switch
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: web_certificate
        schema:
          type: string
          format: uuid
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedBrandList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: core_brands_create
      description: Brand Viewset
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BrandRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Brand'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/brands/{brand_uuid}/:
    get:
      operationId: core_brands_retrieve
      description: Brand Viewset
      parameters:
      - in: path
        name: brand_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Brand.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Brand'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: core_brands_update
      description: Brand Viewset
      parameters:
      - in: path
        name: brand_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Brand.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BrandRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Brand'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: core_brands_partial_update
      description: Brand Viewset
      parameters:
      - in: path
        name: brand_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Brand.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedBrandRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Brand'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: core_brands_destroy
      description: Brand Viewset
      parameters:
      - in: path
        name: brand_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Brand.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/brands/{brand_uuid}/used_by/:
    get:
      operationId: core_brands_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: brand_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Brand.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/brands/current/:
    get:
      operationId: core_brands_current_retrieve
      description: Get current brand
      tags:
      - core
      security:
      - authentik: []
      - {}
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CurrentBrand'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/groups/:
    get:
      operationId: core_groups_list
      description: Group Viewset
      parameters:
      - in: query
        name: include_children
        schema:
          type: boolean
          default: false
      - in: query
        name: include_inherited_roles
        schema:
          type: boolean
          default: false
      - in: query
        name: include_parents
        schema:
          type: boolean
          default: false
      - in: query
        name: include_users
        schema:
          type: boolean
          default: true
      - in: query
        name: is_superuser
        schema:
          type: boolean
      - in: query
        name: members_by_pk
        schema:
          type: array
          items:
            type: integer
        explode: true
        style: form
      - in: query
        name: members_by_username
        schema:
          type: array
          items:
            type: string
        description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_
          only.
        explode: true
        style: form
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - core
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedGroupList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: core_groups_create
      description: Group Viewset
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupRequest'
        required: true
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Group'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/groups/{group_uuid}/:
    get:
      operationId: core_groups_retrieve
      description: Group Viewset
      parameters:
      - in: path
        name: group_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Group.
        required: true
      - in: query
        name: include_children
        schema:
          type: boolean
          default: false
      - in: query
        name: include_inherited_roles
        schema:
          type: boolean
          default: false
      - in: query
        name: include_parents
        schema:
          type: boolean
          default: false
      - in: query
        name: include_users
        schema:
          type: boolean
          default: true
      tags:
      - core
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Group'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: core_groups_update
      description: Group Viewset
      parameters:
      - in: path
        name: group_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Group.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GroupRequest'
        required: true
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Group'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: core_groups_partial_update
      description: Group Viewset
      parameters:
      - in: path
        name: group_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Group.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedGroupRequest'
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Group'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: core_groups_destroy
      description: Group Viewset
      parameters:
      - in: path
        name: group_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Group.
        required: true
      tags:
      - core
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/groups/{group_uuid}/add_user/:
    post:
      operationId: core_groups_add_user_create
      description: Add user to group
      parameters:
      - in: path
        name: group_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Group.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserAccountRequest'
        required: true
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '204':
          description: User added
        '404':
          description: User not found
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/groups/{group_uuid}/remove_user/:
    post:
      operationId: core_groups_remove_user_create
      description: Remove user from group
      parameters:
      - in: path
        name: group_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Group.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserAccountRequest'
        required: true
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '204':
          description: User removed
        '404':
          description: User not found
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/groups/{group_uuid}/used_by/:
    get:
      operationId: core_groups_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: group_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Group.
        required: true
      tags:
      - core
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/object_attributes/:
    get:
      operationId: core_object_attributes_list
      parameters:
      - in: query
        name: enabled
        schema:
          type: boolean
      - in: query
        name: object_type__app_label
        schema:
          type: string
      - in: query
        name: object_type__model
        schema:
          type: string
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedObjectAttributeList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: core_object_attributes_create
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ObjectAttributeRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObjectAttribute'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/object_attributes/{attribute_id}/:
    get:
      operationId: core_object_attributes_retrieve
      parameters:
      - in: path
        name: attribute_id
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Object Attribute.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObjectAttribute'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: core_object_attributes_update
      parameters:
      - in: path
        name: attribute_id
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Object Attribute.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ObjectAttributeRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObjectAttribute'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: core_object_attributes_partial_update
      parameters:
      - in: path
        name: attribute_id
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Object Attribute.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedObjectAttributeRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ObjectAttribute'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: core_object_attributes_destroy
      parameters:
      - in: path
        name: attribute_id
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Object Attribute.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/tokens/:
    get:
      operationId: core_tokens_list
      description: Token Viewset
      parameters:
      - in: query
        name: description
        schema:
          type: string
      - in: query
        name: expires
        schema:
          type: string
          format: date-time
      - in: query
        name: expiring
        schema:
          type: boolean
      - in: query
        name: identifier
        schema:
          type: string
      - in: query
        name: intent
        schema:
          $ref: '#/components/schemas/IntentEnum'
      - in: query
        name: managed
        schema:
          type: string
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: user__username
        schema:
          type: string
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedTokenList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: core_tokens_create
      description: Token Viewset
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TokenRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Token'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/tokens/{identifier}/:
    get:
      operationId: core_tokens_retrieve
      description: Token Viewset
      parameters:
      - in: path
        name: identifier
        schema:
          type: string
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Token'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: core_tokens_update
      description: Token Viewset
      parameters:
      - in: path
        name: identifier
        schema:
          type: string
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TokenRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Token'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: core_tokens_partial_update
      description: Token Viewset
      parameters:
      - in: path
        name: identifier
        schema:
          type: string
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedTokenRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Token'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: core_tokens_destroy
      description: Token Viewset
      parameters:
      - in: path
        name: identifier
        schema:
          type: string
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/tokens/{identifier}/set_key/:
    post:
      operationId: core_tokens_set_key_create
      description: |-
        Set token key. Action is logged as event. `authentik_core.set_token_key` permission
        is required.
      parameters:
      - in: path
        name: identifier
        schema:
          type: string
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TokenSetKeyRequest'
        required: true
      security:
      - authentik: []
      responses:
        '204':
          description: Successfully changed key
        '400':
          description: Missing key
        '404':
          description: Token not found or expired
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/tokens/{identifier}/used_by/:
    get:
      operationId: core_tokens_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: identifier
        schema:
          type: string
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/tokens/{identifier}/view_key/:
    get:
      operationId: core_tokens_view_key_retrieve
      description: Return token key and log access
      parameters:
      - in: path
        name: identifier
        schema:
          type: string
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenView'
          description: ''
        '404':
          description: Token not found or expired
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/transactional/applications/:
    put:
      operationId: core_transactional_applications_update
      description: Convert data into a blueprint, validate it and apply it
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TransactionApplicationRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TransactionApplicationResponse'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/user_consent/:
    get:
      operationId: core_user_consent_list
      description: UserConsent Viewset
      parameters:
      - in: query
        name: application
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: user
        schema:
          type: integer
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedUserConsentList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/user_consent/{id}/:
    get:
      operationId: core_user_consent_retrieve
      description: UserConsent Viewset
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User Consent.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserConsent'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: core_user_consent_destroy
      description: UserConsent Viewset
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User Consent.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/user_consent/{id}/used_by/:
    get:
      operationId: core_user_consent_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User Consent.
        required: true
      tags:
      - core
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/:
    get:
      operationId: core_users_list
      description: User Viewset
      parameters:
      - in: query
        name: date_joined
        schema:
          type: string
          format: date-time
      - in: query
        name: date_joined__gt
        schema:
          type: string
          format: date-time
      - in: query
        name: date_joined__lt
        schema:
          type: string
          format: date-time
      - in: query
        name: email
        schema:
          type: string
      - in: query
        name: groups_by_name
        schema:
          type: array
          items:
            type: string
        explode: true
        style: form
      - in: query
        name: groups_by_pk
        schema:
          type: array
          items:
            type: string
            format: uuid
        explode: true
        style: form
      - in: query
        name: include_groups
        schema:
          type: boolean
          default: true
      - in: query
        name: include_roles
        schema:
          type: boolean
          default: true
      - in: query
        name: is_active
        schema:
          type: boolean
      - in: query
        name: is_superuser
        schema:
          type: boolean
      - in: query
        name: last_login
        schema:
          type: string
          format: date-time
      - in: query
        name: last_login__gt
        schema:
          type: string
          format: date-time
      - in: query
        name: last_login__isnull
        schema:
          type: boolean
      - in: query
        name: last_login__lt
        schema:
          type: string
          format: date-time
      - in: query
        name: last_updated
        schema:
          type: string
          format: date-time
      - in: query
        name: last_updated__gt
        schema:
          type: string
          format: date-time
      - in: query
        name: last_updated__lt
        schema:
          type: string
          format: date-time
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - in: query
        name: path
        schema:
          type: string
      - in: query
        name: path_startswith
        schema:
          type: string
      - in: query
        name: roles_by_name
        schema:
          type: array
          items:
            type: string
        explode: true
        style: form
      - in: query
        name: roles_by_pk
        schema:
          type: array
          items:
            type: string
            format: uuid
        explode: true
        style: form
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: type
        schema:
          type: array
          items:
            $ref: '#/components/schemas/UserTypeEnum'
        explode: true
        style: form
      - in: query
        name: username
        schema:
          type: string
      - in: query
        name: uuid
        schema:
          type: string
          format: uuid
      tags:
      - core
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedUserList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: core_users_create
      description: User Viewset
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserRequest'
        required: true
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/{id}/:
    get:
      operationId: core_users_retrieve
      description: User Viewset
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User.
        required: true
      tags:
      - core
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: core_users_update
      description: User Viewset
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserRequest'
        required: true
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: core_users_partial_update
      description: User Viewset
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedUserRequest'
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: core_users_destroy
      description: User Viewset
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User.
        required: true
      tags:
      - core
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/{id}/impersonate/:
    post:
      operationId: core_users_impersonate_create
      description: Impersonate a user
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImpersonationRequest'
        required: true
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '204':
          description: Successfully started impersonation
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/{id}/recovery/:
    post:
      operationId: core_users_recovery_create
      description: Create a temporary link that a user can use to recover their account
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserRecoveryLinkRequest'
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Link'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/{id}/recovery_email/:
    post:
      operationId: core_users_recovery_email_create
      description: Send an email with a temporary link that a user can use to recover
        their account
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserRecoveryEmailRequest'
        required: true
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '204':
          description: Successfully sent recover email
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/{id}/set_password/:
    post:
      operationId: core_users_set_password_create
      description: Set password for user
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserPasswordSetRequest'
        required: true
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '204':
          description: Successfully changed password
        '400':
          description: Bad request
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/{id}/set_password_hash/:
    post:
      operationId: core_users_set_password_hash_create
      description: |-
        Set a user's password from a pre-hashed Django password value.

        Submit the Django password hash in the shared ``password`` request field.

        This updates authentik's local password verifier only. It does not attempt
        to propagate the password change to LDAP or Kerberos because no raw password
        is available from the request payload.
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User.
        required: true
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserPasswordHashSetRequest'
        required: true
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '204':
          description: Successfully changed password
        '400':
          description: Bad request
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/{id}/used_by/:
    get:
      operationId: core_users_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: id
        schema:
          type: integer
        description: A unique integer value identifying this User.
        required: true
      tags:
      - core
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/account_lockdown/:
    post:
      operationId: core_users_account_lockdown_create
      description: Choose the target account, then return a flow link.
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserAccountLockdownRequest'
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Link'
              examples:
                LockdownFlowURL:
                  value:
                    link: https://example.invalid/if/flow/default-account-lockdown/
                  summary: Lockdown flow URL
          description: ''
        '400':
          description: No lockdown flow configured or the flow is not applicable
        '403':
          description: Permission denied (when targeting another user)
  /core/users/export/:
    post:
      operationId: core_users_export_create
      description: |-
        Create a data export for this data type. Note that the export is generated asynchronously:
        this method returns a `DataExport` object that will initially have `completed=false` as well
        as the permanent URL to that object in the `Location` header.
        You can poll that URL until `completed=true`, at which point the `file_url` property will
        contain a URL to download
      parameters:
      - in: query
        name: date_joined
        schema:
          type: string
          format: date-time
      - in: query
        name: date_joined__gt
        schema:
          type: string
          format: date-time
      - in: query
        name: date_joined__lt
        schema:
          type: string
          format: date-time
      - in: query
        name: email
        schema:
          type: string
      - in: query
        name: groups_by_name
        schema:
          type: array
          items:
            type: string
        explode: true
        style: form
      - in: query
        name: groups_by_pk
        schema:
          type: array
          items:
            type: string
            format: uuid
        explode: true
        style: form
      - in: query
        name: is_active
        schema:
          type: boolean
      - in: query
        name: is_superuser
        schema:
          type: boolean
      - in: query
        name: last_login
        schema:
          type: string
          format: date-time
      - in: query
        name: last_login__gt
        schema:
          type: string
          format: date-time
      - in: query
        name: last_login__isnull
        schema:
          type: boolean
      - in: query
        name: last_login__lt
        schema:
          type: string
          format: date-time
      - in: query
        name: last_updated
        schema:
          type: string
          format: date-time
      - in: query
        name: last_updated__gt
        schema:
          type: string
          format: date-time
      - in: query
        name: last_updated__lt
        schema:
          type: string
          format: date-time
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - in: query
        name: path
        schema:
          type: string
      - in: query
        name: path_startswith
        schema:
          type: string
      - in: query
        name: roles_by_name
        schema:
          type: array
          items:
            type: string
        explode: true
        style: form
      - in: query
        name: roles_by_pk
        schema:
          type: array
          items:
            type: string
            format: uuid
        explode: true
        style: form
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: type
        schema:
          type: array
          items:
            $ref: '#/components/schemas/UserTypeEnum'
        explode: true
        style: form
      - in: query
        name: username
        schema:
          type: string
      - in: query
        name: uuid
        schema:
          type: string
          format: uuid
      tags:
      - core
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataExport'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/impersonate_end/:
    get:
      operationId: core_users_impersonate_end_retrieve
      description: End Impersonation a user
      tags:
      - core
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '204':
          description: Successfully ended impersonation
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/me/:
    get:
      operationId: core_users_me_retrieve
      description: Get information about current user
      tags:
      - core
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SessionUser'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/paths/:
    get:
      operationId: core_users_paths_retrieve
      description: Get all user paths
      parameters:
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - core
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserPath'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/service_account/:
    post:
      operationId: core_users_service_account_create
      description: Create a new user account that is marked as a service account
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserServiceAccountRequest'
        required: true
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserServiceAccountResponse'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /core/users/switch/:
    post:
      operationId: core_users_switch_create
      description: Start browser user switching.
      parameters:
      - in: query
        name: next
        schema:
          type: string
      tags:
      - core
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserSwitchRequest'
      security:
      - authentik: []
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserSwitchResponse'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /crypto/certificatekeypairs/:
    get:
      operationId: crypto_certificatekeypairs_list
      description: CertificateKeyPair Viewset
      parameters:
      - in: query
        name: has_key
        schema:
          type: boolean
        description: Only return certificate-key pairs with keys
      - in: query
        name: key_type
        schema:
          type: array
          items:
            $ref: '#/components/schemas/KeyTypeEnum'
          description: Filter by key algorithm type (RSA, EC, DSA, etc). Can be specified
            multiple times (e.g. '?key_type=rsa&key_type=ec')
      - in: query
        name: managed
        schema:
          type: string
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - crypto
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedCertificateKeyPairList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: crypto_certificatekeypairs_create
      description: CertificateKeyPair Viewset
      tags:
      - crypto
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CertificateKeyPairRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CertificateKeyPair'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /crypto/certificatekeypairs/{kp_uuid}/:
    get:
      operationId: crypto_certificatekeypairs_retrieve
      description: CertificateKeyPair Viewset
      parameters:
      - in: path
        name: kp_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Certificate-Key Pair.
        required: true
      tags:
      - crypto
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CertificateKeyPair'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: crypto_certificatekeypairs_update
      description: CertificateKeyPair Viewset
      parameters:
      - in: path
        name: kp_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Certificate-Key Pair.
        required: true
      tags:
      - crypto
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CertificateKeyPairRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CertificateKeyPair'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: crypto_certificatekeypairs_partial_update
      description: CertificateKeyPair Viewset
      parameters:
      - in: path
        name: kp_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Certificate-Key Pair.
        required: true
      tags:
      - crypto
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedCertificateKeyPairRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CertificateKeyPair'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: crypto_certificatekeypairs_destroy
      description: CertificateKeyPair Viewset
      parameters:
      - in: path
        name: kp_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Certificate-Key Pair.
        required: true
      tags:
      - crypto
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /crypto/certificatekeypairs/{kp_uuid}/used_by/:
    get:
      operationId: crypto_certificatekeypairs_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: kp_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Certificate-Key Pair.
        required: true
      tags:
      - crypto
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /crypto/certificatekeypairs/{kp_uuid}/view_certificate/:
    get:
      operationId: crypto_certificatekeypairs_view_certificate_retrieve
      description: Return certificate-key pairs certificate and log access
      parameters:
      - in: query
        name: download
        schema:
          type: boolean
      - in: path
        name: kp_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Certificate-Key Pair.
        required: true
      tags:
      - crypto
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CertificateData'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /crypto/certificatekeypairs/{kp_uuid}/view_private_key/:
    get:
      operationId: crypto_certificatekeypairs_view_private_key_retrieve
      description: Return certificate-key pairs private key and log access
      parameters:
      - in: query
        name: download
        schema:
          type: boolean
      - in: path
        name: kp_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Certificate-Key Pair.
        required: true
      tags:
      - crypto
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CertificateData'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /crypto/certificatekeypairs/generate/:
    post:
      operationId: crypto_certificatekeypairs_generate_create
      description: Generate a new, self-signed certificate-key pair
      tags:
      - crypto
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CertificateGenerationRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CertificateKeyPair'
          description: ''
        '400':
          description: Bad request
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /debug/log/:
    post:
      operationId: debug_log_create
      description: |-
        Debug-only endpoint to allow frontend to log messages, usable
        when browser develooper-tools aren't available.

        Never available in production.
      tags:
      - debug
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServerLogRequest'
        required: true
      security:
      - authentik: []
      - {}
      responses:
        '201':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/connectors/:
    get:
      operationId: endpoints_agents_connectors_list
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: query
        name: enabled
        schema:
          type: boolean
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedAgentConnectorList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: endpoints_agents_connectors_create
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AgentConnectorRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/connectors/{connector_uuid}/:
    get:
      operationId: endpoints_agents_connectors_retrieve
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Agent Connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: endpoints_agents_connectors_update
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Agent Connector.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AgentConnectorRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: endpoints_agents_connectors_partial_update
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Agent Connector.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedAgentConnectorRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: endpoints_agents_connectors_destroy
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Agent Connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/connectors/{connector_uuid}/mdm_config/:
    post:
      operationId: endpoints_agents_connectors_mdm_config_create
      description: Generate configuration for MDM systems to deploy authentik Agent
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Agent Connector.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MDMConfigRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MDMConfigResponse'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/connectors/{connector_uuid}/used_by/:
    get:
      operationId: endpoints_agents_connectors_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Agent Connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/connectors/agent_config/:
    get:
      operationId: endpoints_agents_connectors_agent_config_retrieve
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      tags:
      - endpoints
      security:
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentConfig'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/connectors/auth_fed/:
    post:
      operationId: endpoints_agents_connectors_auth_fed_create
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: query
        name: device
        schema:
          type: string
        required: true
      tags:
      - endpoints
      security:
      - authentik_device_federation: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentTokenResponse'
          description: ''
        '404':
          description: Device not found
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/connectors/auth_ia/:
    post:
      operationId: endpoints_agents_connectors_auth_ia_create
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: query
        name: login_hint
        schema:
          type: string
      tags:
      - endpoints
      security:
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentAuthenticationResponse'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/connectors/check_in/:
    post:
      operationId: endpoints_agents_connectors_check_in_create
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeviceFactsRequest'
      security:
      - authentik_device_auth: []
      responses:
        '204':
          description: Successfully checked in
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/connectors/enroll/:
    post:
      operationId: endpoints_agents_connectors_enroll_create
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnrollRequest'
        required: true
      security:
      - authentik_device_enroll: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentTokenResponse'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/enrollment_tokens/:
    get:
      operationId: endpoints_agents_enrollment_tokens_list
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: query
        name: connector
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: token_uuid
        schema:
          type: string
          format: uuid
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedEnrollmentTokenList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: endpoints_agents_enrollment_tokens_create
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnrollmentTokenRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnrollmentToken'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/enrollment_tokens/{token_uuid}/:
    get:
      operationId: endpoints_agents_enrollment_tokens_retrieve
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: token_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Enrollment Token.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnrollmentToken'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: endpoints_agents_enrollment_tokens_update
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: token_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Enrollment Token.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EnrollmentTokenRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnrollmentToken'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: endpoints_agents_enrollment_tokens_partial_update
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: token_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Enrollment Token.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedEnrollmentTokenRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EnrollmentToken'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: endpoints_agents_enrollment_tokens_destroy
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: token_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Enrollment Token.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/enrollment_tokens/{token_uuid}/used_by/:
    get:
      operationId: endpoints_agents_enrollment_tokens_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: token_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Enrollment Token.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/enrollment_tokens/{token_uuid}/view_key/:
    get:
      operationId: endpoints_agents_enrollment_tokens_view_key_retrieve
      description: Return token key and log access
      parameters:
      - in: path
        name: token_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Enrollment Token.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TokenView'
          description: ''
        '404':
          description: Token not found or expired
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/psso/ise/:
    get:
      operationId: endpoints_agents_psso_ise_list
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: query
        name: apple_enclave_key_id
        schema:
          type: string
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: user
        schema:
          type: integer
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedAppleIndependentSecureEnclaveList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: endpoints_agents_psso_ise_create
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AppleIndependentSecureEnclaveRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppleIndependentSecureEnclave'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/psso/ise/{uuid}/:
    get:
      operationId: endpoints_agents_psso_ise_retrieve
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Apple Independent Secure Enclave.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppleIndependentSecureEnclave'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: endpoints_agents_psso_ise_update
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Apple Independent Secure Enclave.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AppleIndependentSecureEnclaveRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppleIndependentSecureEnclave'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: endpoints_agents_psso_ise_partial_update
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Apple Independent Secure Enclave.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedAppleIndependentSecureEnclaveRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AppleIndependentSecureEnclave'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: endpoints_agents_psso_ise_destroy
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Apple Independent Secure Enclave.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/psso/ise/{uuid}/used_by/:
    get:
      operationId: endpoints_agents_psso_ise_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Apple Independent Secure Enclave.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/psso/register/device/:
    get:
      operationId: endpoints_agents_psso_register_device_retrieve
      tags:
      - endpoints
      security:
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentPSSODeviceState'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: endpoints_agents_psso_register_device_create
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AgentPSSODeviceRegistrationRequest'
        required: true
      security:
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentPSSODeviceRegistrationResponse'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: endpoints_agents_psso_register_device_destroy
      description: |-
        Clear this device's Platform SSO registration, used when the configuration
        profile is removed from the device. The device stays enrolled otherwise.
      tags:
      - endpoints
      security:
      - authentik_device_auth: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/agents/psso/register/user/:
    post:
      operationId: endpoints_agents_psso_register_user_create
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AgentPSSOUserRegistrationRequest'
        required: true
      security:
      - authentik_device_auth: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserSelf'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/connectors/:
    get:
      operationId: endpoints_connectors_list
      description: Connector Viewset
      parameters:
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedConnectorList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/connectors/{connector_uuid}/:
    get:
      operationId: endpoints_connectors_retrieve
      description: Connector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Connector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: endpoints_connectors_destroy
      description: Connector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/connectors/{connector_uuid}/used_by/:
    get:
      operationId: endpoints_connectors_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/connectors/types/:
    get:
      operationId: endpoints_connectors_types_list
      description: Get all creatable types
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TypeCreate'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/device_access_groups/:
    get:
      operationId: endpoints_device_access_groups_list
      description: DeviceAccessGroup Viewset
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - in: query
        name: pbm_uuid
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedDeviceAccessGroupList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: endpoints_device_access_groups_create
      description: DeviceAccessGroup Viewset
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeviceAccessGroupRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeviceAccessGroup'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/device_access_groups/{pbm_uuid}/:
    get:
      operationId: endpoints_device_access_groups_retrieve
      description: DeviceAccessGroup Viewset
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device access group.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeviceAccessGroup'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: endpoints_device_access_groups_update
      description: DeviceAccessGroup Viewset
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device access group.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeviceAccessGroupRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeviceAccessGroup'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: endpoints_device_access_groups_partial_update
      description: DeviceAccessGroup Viewset
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device access group.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedDeviceAccessGroupRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeviceAccessGroup'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: endpoints_device_access_groups_destroy
      description: DeviceAccessGroup Viewset
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device access group.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/device_access_groups/{pbm_uuid}/used_by/:
    get:
      operationId: endpoints_device_access_groups_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device access group.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/device_bindings/:
    get:
      operationId: endpoints_device_bindings_list
      description: PolicyBinding Viewset
      parameters:
      - in: query
        name: enabled
        schema:
          type: boolean
      - in: query
        name: order
        schema:
          type: integer
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - in: query
        name: policy
        schema:
          type: string
          format: uuid
      - in: query
        name: policy__isnull
        schema:
          type: boolean
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: target
        schema:
          type: string
          format: uuid
      - in: query
        name: target_in
        schema:
          type: array
          items:
            type: string
            format: uuid
        explode: true
        style: form
      - in: query
        name: timeout
        schema:
          type: integer
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedDeviceUserBindingList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: endpoints_device_bindings_create
      description: PolicyBinding Viewset
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeviceUserBindingRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeviceUserBinding'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/device_bindings/{policy_binding_uuid}/:
    get:
      operationId: endpoints_device_bindings_retrieve
      description: PolicyBinding Viewset
      parameters:
      - in: path
        name: policy_binding_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device User binding.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeviceUserBinding'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: endpoints_device_bindings_update
      description: PolicyBinding Viewset
      parameters:
      - in: path
        name: policy_binding_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device User binding.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DeviceUserBindingRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeviceUserBinding'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: endpoints_device_bindings_partial_update
      description: PolicyBinding Viewset
      parameters:
      - in: path
        name: policy_binding_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device User binding.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedDeviceUserBindingRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeviceUserBinding'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: endpoints_device_bindings_destroy
      description: PolicyBinding Viewset
      parameters:
      - in: path
        name: policy_binding_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device User binding.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/device_bindings/{policy_binding_uuid}/used_by/:
    get:
      operationId: endpoints_device_bindings_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: policy_binding_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device User binding.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/devices/:
    get:
      operationId: endpoints_devices_list
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: query
        name: identifier
        schema:
          type: string
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedEndpointDeviceList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: endpoints_devices_create
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EndpointDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EndpointDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/devices/{device_uuid}/:
    get:
      operationId: endpoints_devices_retrieve
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: device_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EndpointDeviceDetails'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: endpoints_devices_update
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: device_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EndpointDeviceRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EndpointDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: endpoints_devices_partial_update
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: device_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedEndpointDeviceRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EndpointDevice'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: endpoints_devices_destroy
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      parameters:
      - in: path
        name: device_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/devices/{device_uuid}/used_by/:
    get:
      operationId: endpoints_devices_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: device_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Device.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/devices/summary/:
    get:
      operationId: endpoints_devices_summary_retrieve
      description: Mixin to add a used_by endpoint to return a list of all objects
        using this object
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeviceSummary'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/fleet/connectors/:
    get:
      operationId: endpoints_fleet_connectors_list
      description: FleetConnector Viewset
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedFleetConnectorList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: endpoints_fleet_connectors_create
      description: FleetConnector Viewset
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FleetConnectorRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FleetConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/fleet/connectors/{connector_uuid}/:
    get:
      operationId: endpoints_fleet_connectors_retrieve
      description: FleetConnector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Fleet Connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FleetConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: endpoints_fleet_connectors_update
      description: FleetConnector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Fleet Connector.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FleetConnectorRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FleetConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: endpoints_fleet_connectors_partial_update
      description: FleetConnector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Fleet Connector.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedFleetConnectorRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FleetConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: endpoints_fleet_connectors_destroy
      description: FleetConnector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Fleet Connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/fleet/connectors/{connector_uuid}/used_by/:
    get:
      operationId: endpoints_fleet_connectors_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Fleet Connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/google_chrome/connectors/:
    get:
      operationId: endpoints_google_chrome_connectors_list
      description: GoogleChromeConnector Viewset
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedGoogleChromeConnectorList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: endpoints_google_chrome_connectors_create
      description: GoogleChromeConnector Viewset
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoogleChromeConnectorRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleChromeConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/google_chrome/connectors/{connector_uuid}/:
    get:
      operationId: endpoints_google_chrome_connectors_retrieve
      description: GoogleChromeConnector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Google Device Trust Connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleChromeConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: endpoints_google_chrome_connectors_update
      description: GoogleChromeConnector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Google Device Trust Connector.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GoogleChromeConnectorRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleChromeConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: endpoints_google_chrome_connectors_partial_update
      description: GoogleChromeConnector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Google Device Trust Connector.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedGoogleChromeConnectorRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleChromeConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: endpoints_google_chrome_connectors_destroy
      description: GoogleChromeConnector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Google Device Trust Connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/google_chrome/connectors/{connector_uuid}/used_by/:
    get:
      operationId: endpoints_google_chrome_connectors_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Google Device Trust Connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/microsoft_intune/connectors/:
    get:
      operationId: endpoints_microsoft_intune_connectors_list
      description: MicrosoftIntuneConnector Viewset
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedMicrosoftIntuneConnectorList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: endpoints_microsoft_intune_connectors_create
      description: MicrosoftIntuneConnector Viewset
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MicrosoftIntuneConnectorRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MicrosoftIntuneConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/microsoft_intune/connectors/{connector_uuid}/:
    get:
      operationId: endpoints_microsoft_intune_connectors_retrieve
      description: MicrosoftIntuneConnector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Microsoft Intune Connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MicrosoftIntuneConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: endpoints_microsoft_intune_connectors_update
      description: MicrosoftIntuneConnector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Microsoft Intune Connector.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MicrosoftIntuneConnectorRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MicrosoftIntuneConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: endpoints_microsoft_intune_connectors_partial_update
      description: MicrosoftIntuneConnector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Microsoft Intune Connector.
        required: true
      tags:
      - endpoints
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedMicrosoftIntuneConnectorRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MicrosoftIntuneConnector'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: endpoints_microsoft_intune_connectors_destroy
      description: MicrosoftIntuneConnector Viewset
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Microsoft Intune Connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /endpoints/microsoft_intune/connectors/{connector_uuid}/used_by/:
    get:
      operationId: endpoints_microsoft_intune_connectors_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: connector_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Microsoft Intune Connector.
        required: true
      tags:
      - endpoints
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /enterprise/license/:
    get:
      operationId: enterprise_license_list
      description: License Viewset
      parameters:
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - enterprise
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedLicenseList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: enterprise_license_create
      description: License Viewset
      tags:
      - enterprise
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LicenseRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/License'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /enterprise/license/{license_uuid}/:
    get:
      operationId: enterprise_license_retrieve
      description: License Viewset
      parameters:
      - in: path
        name: license_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this License.
        required: true
      tags:
      - enterprise
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/License'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: enterprise_license_update
      description: License Viewset
      parameters:
      - in: path
        name: license_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this License.
        required: true
      tags:
      - enterprise
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LicenseRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/License'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: enterprise_license_partial_update
      description: License Viewset
      parameters:
      - in: path
        name: license_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this License.
        required: true
      tags:
      - enterprise
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedLicenseRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/License'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: enterprise_license_destroy
      description: License Viewset
      parameters:
      - in: path
        name: license_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this License.
        required: true
      tags:
      - enterprise
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /enterprise/license/{license_uuid}/used_by/:
    get:
      operationId: enterprise_license_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: license_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this License.
        required: true
      tags:
      - enterprise
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /enterprise/license/install_id/:
    get:
      operationId: enterprise_license_install_id_retrieve
      description: Get install_id
      tags:
      - enterprise
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InstallID'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /enterprise/license/summary/:
    get:
      operationId: enterprise_license_summary_retrieve
      description: Get the total license status
      parameters:
      - in: query
        name: cached
        schema:
          type: boolean
          default: true
      tags:
      - enterprise
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LicenseSummary'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /enterprise/license/user_counts/:
    get:
      operationId: enterprise_license_user_counts_retrieve
      description: |-
        Get active user totals and counts for relative or absolute date ranges.

        At least one positive relative count step or a complete absolute range is required.
        Relative and absolute ranges may be combined. Range starts are inclusive and ends are
        exclusive. Counts include currently active, non-anonymous accounts.
      parameters:
      - in: query
        name: count_steps
        schema:
          type: array
          items:
            type: string
            minLength: 1
          maxItems: 20
        description: Positive relative periods, such as 'days=30' or 'weeks=3;days=2'.
      - in: query
        name: end
        schema:
          type: string
          format: date-time
        description: Exclusive end of an absolute range; must be provided with start.
      - in: query
        name: start
        schema:
          type: string
          format: date-time
        description: Inclusive start of an absolute range; must be provided with end.
      tags:
      - enterprise
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LicenseUserCounts'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/events/:
    get:
      operationId: events_events_list
      description: Event Read-Only Viewset
      parameters:
      - in: query
        name: action
        schema:
          type: string
      - in: query
        name: actions
        schema:
          type: array
          items:
            $ref: '#/components/schemas/EventActions'
        explode: true
        style: form
      - in: query
        name: brand_name
        schema:
          type: string
        description: Brand name
      - in: query
        name: client_ip
        schema:
          type: string
      - in: query
        name: context_authorized_app
        schema:
          type: string
        description: Context Authorized application
      - in: query
        name: context_device
        schema:
          type: string
        description: Context Device Primary Key
      - in: query
        name: context_model_app
        schema:
          type: string
        description: Context Model App
      - in: query
        name: context_model_name
        schema:
          type: string
        description: Context Model Name
      - in: query
        name: context_model_pk
        schema:
          type: string
        description: Context Model Primary Key
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: username
        schema:
          type: string
        description: Username
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedEventList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: events_events_create
      description: Event Read-Only Viewset
      tags:
      - events
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EventRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Event'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/events/{event_uuid}/:
    get:
      operationId: events_events_retrieve
      description: Event Read-Only Viewset
      parameters:
      - in: path
        name: event_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Event.
        required: true
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Event'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: events_events_update
      description: Event Read-Only Viewset
      parameters:
      - in: path
        name: event_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Event.
        required: true
      tags:
      - events
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EventRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Event'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: events_events_partial_update
      description: Event Read-Only Viewset
      parameters:
      - in: path
        name: event_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Event.
        required: true
      tags:
      - events
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedEventRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Event'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: events_events_destroy
      description: Event Read-Only Viewset
      parameters:
      - in: path
        name: event_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Event.
        required: true
      tags:
      - events
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/events/actions/:
    get:
      operationId: events_events_actions_list
      description: Get all actions
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/TypeCreate'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/events/export/:
    post:
      operationId: events_events_export_create
      description: |-
        Create a data export for this data type. Note that the export is generated asynchronously:
        this method returns a `DataExport` object that will initially have `completed=false` as well
        as the permanent URL to that object in the `Location` header.
        You can poll that URL until `completed=true`, at which point the `file_url` property will
        contain a URL to download
      parameters:
      - in: query
        name: action
        schema:
          type: string
      - in: query
        name: actions
        schema:
          type: array
          items:
            $ref: '#/components/schemas/EventActions'
        explode: true
        style: form
      - in: query
        name: brand_name
        schema:
          type: string
        description: Brand name
      - in: query
        name: client_ip
        schema:
          type: string
      - in: query
        name: context_authorized_app
        schema:
          type: string
        description: Context Authorized application
      - in: query
        name: context_device
        schema:
          type: string
        description: Context Device Primary Key
      - in: query
        name: context_model_app
        schema:
          type: string
        description: Context Model App
      - in: query
        name: context_model_name
        schema:
          type: string
        description: Context Model Name
      - in: query
        name: context_model_pk
        schema:
          type: string
        description: Context Model Primary Key
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: username
        schema:
          type: string
        description: Username
      tags:
      - events
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DataExport'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/events/stats/:
    get:
      operationId: events_events_stats_retrieve
      description: Get event stats for specified filters and count steps
      parameters:
      - in: query
        name: action
        schema:
          type: string
      - in: query
        name: actions
        schema:
          type: array
          items:
            $ref: '#/components/schemas/EventActions'
        explode: true
        style: form
      - in: query
        name: brand_name
        schema:
          type: string
        description: Brand name
      - in: query
        name: client_ip
        schema:
          type: string
      - in: query
        name: context_authorized_app
        schema:
          type: string
        description: Context Authorized application
      - in: query
        name: context_device
        schema:
          type: string
        description: Context Device Primary Key
      - in: query
        name: context_model_app
        schema:
          type: string
        description: Context Model App
      - in: query
        name: context_model_name
        schema:
          type: string
        description: Context Model Name
      - in: query
        name: context_model_pk
        schema:
          type: string
        description: Context Model Primary Key
      - in: query
        name: count_steps
        schema:
          type: array
          items:
            type: string
            minLength: 1
        description: Timedelta, format of 'weeks=3;days=2;hours=3,seconds=2'
        required: true
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: username
        schema:
          type: string
        description: Username
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EventStats'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/events/top_per_user/:
    get:
      operationId: events_events_top_per_user_list
      description: Get the top_n events grouped by user count
      parameters:
      - in: query
        name: action
        schema:
          type: string
      - in: query
        name: actions
        schema:
          type: array
          items:
            $ref: '#/components/schemas/EventActions'
        explode: true
        style: form
      - in: query
        name: brand_name
        schema:
          type: string
        description: Brand name
      - in: query
        name: client_ip
        schema:
          type: string
      - in: query
        name: context_authorized_app
        schema:
          type: string
        description: Context Authorized application
      - in: query
        name: context_device
        schema:
          type: string
        description: Context Device Primary Key
      - in: query
        name: context_model_app
        schema:
          type: string
        description: Context Model App
      - in: query
        name: context_model_name
        schema:
          type: string
        description: Context Model Name
      - in: query
        name: context_model_pk
        schema:
          type: string
        description: Context Model Primary Key
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: top_n
        schema:
          type: integer
          default: 15
      - in: query
        name: username
        schema:
          type: string
        description: Username
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/EventTopPerUser'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/events/volume/:
    get:
      operationId: events_events_volume_list
      description: Get event volume for specified filters and timeframe
      parameters:
      - in: query
        name: action
        schema:
          type: string
      - in: query
        name: actions
        schema:
          type: array
          items:
            $ref: '#/components/schemas/EventActions'
        explode: true
        style: form
      - in: query
        name: brand_name
        schema:
          type: string
        description: Brand name
      - in: query
        name: client_ip
        schema:
          type: string
      - in: query
        name: context_authorized_app
        schema:
          type: string
        description: Context Authorized application
      - in: query
        name: context_device
        schema:
          type: string
        description: Context Device Primary Key
      - in: query
        name: context_model_app
        schema:
          type: string
        description: Context Model App
      - in: query
        name: context_model_name
        schema:
          type: string
        description: Context Model Name
      - in: query
        name: context_model_pk
        schema:
          type: string
        description: Context Model Primary Key
      - in: query
        name: history_days
        schema:
          type: integer
          default: 7
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: username
        schema:
          type: string
        description: Username
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/EventVolume'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/notifications/:
    get:
      operationId: events_notifications_list
      description: Notification Viewset
      parameters:
      - in: query
        name: body
        schema:
          type: string
      - in: query
        name: created
        schema:
          type: string
          format: date-time
      - in: query
        name: event
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: seen
        schema:
          type: boolean
      - in: query
        name: severity
        schema:
          $ref: '#/components/schemas/SeverityEnum'
      - in: query
        name: user
        schema:
          type: integer
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedNotificationList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/notifications/{uuid}/:
    get:
      operationId: events_notifications_retrieve
      description: Notification Viewset
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification.
        required: true
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Notification'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: events_notifications_update
      description: Notification Viewset
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification.
        required: true
      tags:
      - events
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Notification'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: events_notifications_partial_update
      description: Notification Viewset
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification.
        required: true
      tags:
      - events
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedNotificationRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Notification'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: events_notifications_destroy
      description: Notification Viewset
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification.
        required: true
      tags:
      - events
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/notifications/{uuid}/used_by/:
    get:
      operationId: events_notifications_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification.
        required: true
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/notifications/mark_all_seen/:
    post:
      operationId: events_notifications_mark_all_seen_create
      description: Mark all the user's notifications as seen
      tags:
      - events
      security:
      - authentik: []
      responses:
        '204':
          description: Marked tasks as read successfully.
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/rules/:
    get:
      operationId: events_rules_list
      description: NotificationRule Viewset
      parameters:
      - in: query
        name: destination_group__name
        schema:
          type: string
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: severity
        schema:
          allOf:
          - $ref: '#/components/schemas/SeverityEnum'
          description: |+
            Controls which severity level the created notifications will have.

      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedNotificationRuleList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: events_rules_create
      description: NotificationRule Viewset
      tags:
      - events
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationRuleRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationRule'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/rules/{pbm_uuid}/:
    get:
      operationId: events_rules_retrieve
      description: NotificationRule Viewset
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification Rule.
        required: true
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationRule'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: events_rules_update
      description: NotificationRule Viewset
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification Rule.
        required: true
      tags:
      - events
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationRuleRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationRule'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: events_rules_partial_update
      description: NotificationRule Viewset
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification Rule.
        required: true
      tags:
      - events
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedNotificationRuleRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationRule'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: events_rules_destroy
      description: NotificationRule Viewset
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification Rule.
        required: true
      tags:
      - events
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/rules/{pbm_uuid}/used_by/:
    get:
      operationId: events_rules_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: pbm_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification Rule.
        required: true
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/transports/:
    get:
      operationId: events_transports_list
      description: NotificationTransport Viewset
      parameters:
      - in: query
        name: mode
        schema:
          $ref: '#/components/schemas/TransportModeEnum'
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: send_once
        schema:
          type: boolean
      - in: query
        name: webhook_url
        schema:
          type: string
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedNotificationTransportList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: events_transports_create
      description: NotificationTransport Viewset
      tags:
      - events
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationTransportRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationTransport'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/transports/{uuid}/:
    get:
      operationId: events_transports_retrieve
      description: NotificationTransport Viewset
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification Transport.
        required: true
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationTransport'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: events_transports_update
      description: NotificationTransport Viewset
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification Transport.
        required: true
      tags:
      - events
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotificationTransportRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationTransport'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: events_transports_partial_update
      description: NotificationTransport Viewset
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification Transport.
        required: true
      tags:
      - events
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedNotificationTransportRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationTransport'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: events_transports_destroy
      description: NotificationTransport Viewset
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification Transport.
        required: true
      tags:
      - events
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/transports/{uuid}/test/:
    post:
      operationId: events_transports_test_create
      description: |-
        Send example notification using selected transport. Requires
        Modify permissions.
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification Transport.
        required: true
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotificationTransportTest'
          description: ''
        '500':
          description: Failed to test transport
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /events/transports/{uuid}/used_by/:
    get:
      operationId: events_transports_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Notification Transport.
        required: true
      tags:
      - events
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/bindings/:
    get:
      operationId: flows_bindings_list
      description: FlowStageBinding Viewset
      parameters:
      - in: query
        name: evaluate_on_plan
        schema:
          type: boolean
      - in: query
        name: fsb_uuid
        schema:
          type: string
          format: uuid
      - in: query
        name: invalid_response_action
        schema:
          allOf:
          - $ref: '#/components/schemas/InvalidResponseActionEnum'
          description: |+
            Configure how the flow executor should handle an invalid response to a challenge. RETRY returns the error message and a similar challenge to the executor. RESTART restarts the flow from the beginning, and RESTART_WITH_CONTEXT restarts the flow while keeping the current context.

      - in: query
        name: order
        schema:
          type: integer
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - in: query
        name: pbm_uuid
        schema:
          type: string
          format: uuid
      - in: query
        name: policies
        schema:
          type: array
          items:
            type: string
            format: uuid
        explode: true
        style: form
      - in: query
        name: policy_engine_mode
        schema:
          $ref: '#/components/schemas/PolicyEngineMode'
      - in: query
        name: re_evaluate_policies
        schema:
          type: boolean
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: stage
        schema:
          type: string
          format: uuid
      - in: query
        name: target
        schema:
          type: string
          format: uuid
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedFlowStageBindingList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: flows_bindings_create
      description: FlowStageBinding Viewset
      tags:
      - flows
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FlowStageBindingRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FlowStageBinding'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/bindings/{fsb_uuid}/:
    get:
      operationId: flows_bindings_retrieve
      description: FlowStageBinding Viewset
      parameters:
      - in: path
        name: fsb_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Flow Stage Binding.
        required: true
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FlowStageBinding'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: flows_bindings_update
      description: FlowStageBinding Viewset
      parameters:
      - in: path
        name: fsb_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Flow Stage Binding.
        required: true
      tags:
      - flows
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FlowStageBindingRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FlowStageBinding'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: flows_bindings_partial_update
      description: FlowStageBinding Viewset
      parameters:
      - in: path
        name: fsb_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Flow Stage Binding.
        required: true
      tags:
      - flows
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedFlowStageBindingRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FlowStageBinding'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: flows_bindings_destroy
      description: FlowStageBinding Viewset
      parameters:
      - in: path
        name: fsb_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Flow Stage Binding.
        required: true
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/bindings/{fsb_uuid}/used_by/:
    get:
      operationId: flows_bindings_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: fsb_uuid
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this Flow Stage Binding.
        required: true
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/executor/{flow_slug}/:
    get:
      operationId: flows_executor_get
      description: Get the next pending challenge from the currently active flow.
      parameters:
      - in: path
        name: flow_slug
        schema:
          type: string
        required: true
      - in: query
        name: query
        schema:
          type: string
        description: Querystring as received
        required: true
      tags:
      - flows
      security:
      - authentik: []
      - {}
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChallengeTypes'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: flows_executor_solve
      description: Solve the previously retrieved challenge and advanced to the next
        stage.
      parameters:
      - in: path
        name: flow_slug
        schema:
          type: string
        required: true
      - in: query
        name: query
        schema:
          type: string
        description: Querystring as received
        required: true
      tags:
      - flows
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FlowChallengeResponseRequest'
      security:
      - authentik: []
      - {}
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChallengeTypes'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/inspector/{flow_slug}/:
    get:
      operationId: flows_inspector_get
      description: Get current flow state and record it
      parameters:
      - in: path
        name: flow_slug
        schema:
          type: string
        required: true
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FlowInspection'
          description: ''
        '400':
          description: No flow plan in session.
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/instances/:
    get:
      operationId: flows_instances_list
      description: Flow Viewset
      parameters:
      - in: query
        name: denied_action
        schema:
          allOf:
          - $ref: '#/components/schemas/DeniedActionEnum'
          description: |+
            Configure what should happen when a flow denies access to a user.

      - in: query
        name: designation
        schema:
          allOf:
          - $ref: '#/components/schemas/FlowDesignationEnum'
          description: |+
            Decides what this Flow is used for. For example, the Authentication flow is redirect to when an un-authenticated user visits authentik.

      - in: query
        name: flow_uuid
        schema:
          type: string
          format: uuid
      - $ref: '#/components/parameters/QueryName'
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: slug
        schema:
          type: string
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedFlowList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: flows_instances_create
      description: Flow Viewset
      tags:
      - flows
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FlowRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Flow'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/instances/{slug}/:
    get:
      operationId: flows_instances_retrieve
      description: Flow Viewset
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Visible in the URL.
        required: true
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Flow'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: flows_instances_update
      description: Flow Viewset
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Visible in the URL.
        required: true
      tags:
      - flows
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FlowRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Flow'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: flows_instances_partial_update
      description: Flow Viewset
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Visible in the URL.
        required: true
      tags:
      - flows
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedFlowRequest'
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Flow'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    delete:
      operationId: flows_instances_destroy
      description: Flow Viewset
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Visible in the URL.
        required: true
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '204':
          description: No response body
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/instances/{slug}/diagram/:
    get:
      operationId: flows_instances_diagram_retrieve
      description: Return the graph of flow with slug `slug`, for the client to render
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Visible in the URL.
        required: true
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FlowDiagram'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/instances/{slug}/execute/:
    get:
      operationId: flows_instances_execute_retrieve
      description: Execute flow for current user
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Visible in the URL.
        required: true
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Link'
          description: ''
        '400':
          description: Flow not applicable
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/instances/{slug}/export/:
    get:
      operationId: flows_instances_export_retrieve
      description: Export flow to .yaml file
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Visible in the URL.
        required: true
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: string
                format: binary
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/instances/{slug}/used_by/:
    get:
      operationId: flows_instances_used_by_list
      description: Get a list of all objects that use this object
      parameters:
      - in: path
        name: slug
        schema:
          type: string
          description: Visible in the URL.
        required: true
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UsedBy'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/instances/cache_clear/:
    post:
      operationId: flows_instances_cache_clear_create
      description: Clear flow cache
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '204':
          description: Successfully cleared cache
        '400':
          description: Bad request
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /flows/instances/cache_info/:
    get:
      operationId: flows_instances_cache_info_retrieve
      description: Info about cached flows
      tags:
      - flows
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cache'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /lifecycle/iterations/:
    post:
      operationId: lifecycle_iterations_create
      description: |-
        Mixin to validate that a valid enterprise license
        exists before allowing to save the object
      tags:
      - lifecycle
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LifecycleIterationRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LifecycleIteration'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /lifecycle/iterations/latest/{content_type}/{object_id}/:
    get:
      operationId: lifecycle_iterations_list_latest
      description: |-
        Mixin to validate that a valid enterprise license
        exists before allowing to save the object
      parameters:
      - in: path
        name: content_type
        schema:
          type: string
          pattern: ^[^/]+$
        required: true
      - in: path
        name: object_id
        schema:
          type: string
          pattern: ^[^/]+$
        required: true
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: user_is_reviewer
        schema:
          type: boolean
      tags:
      - lifecycle
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/LifecycleIteration'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /lifecycle/iterations/open/:
    get:
      operationId: lifecycle_iterations_list_open
      description: |-
        Mixin to validate that a valid enterprise license
        exists before allowing to save the object
      parameters:
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      - in: query
        name: user_is_reviewer
        schema:
          type: boolean
      tags:
      - lifecycle
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedLifecycleIterationList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /lifecycle/reviews/:
    post:
      operationId: lifecycle_reviews_create
      description: |-
        Mixin to validate that a valid enterprise license
        exists before allowing to save the object
      tags:
      - lifecycle
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ReviewRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Review'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /lifecycle/rules/:
    get:
      operationId: lifecycle_rules_list
      parameters:
      - in: query
        name: content_type__model
        schema:
          type: string
      - $ref: '#/components/parameters/QueryPaginationOrdering'
      - $ref: '#/components/parameters/QueryPaginationPage'
      - $ref: '#/components/parameters/QueryPaginationPageSize'
      - $ref: '#/components/parameters/QuerySearch'
      tags:
      - lifecycle
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedLifecycleRuleList'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    post:
      operationId: lifecycle_rules_create
      tags:
      - lifecycle
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LifecycleRuleRequest'
        required: true
      security:
      - authentik: []
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LifecycleRule'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
  /lifecycle/rules/{id}/:
    get:
      operationId: lifecycle_rules_retrieve
      parameters:
      - in: path
        name: id
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this lifecycle rule.
        required: true
      tags:
      - lifecycle
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LifecycleRule'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    put:
      operationId: lifecycle_rules_update
      parameters:
      - in: path
        name: id
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this lifecycle rule.
        required: true
      tags:
      - lifecycle
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LifecycleRuleRequest'
        required: true
      security:
      - authentik: []
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LifecycleRule'
          description: ''
        '400':
          $ref: '#/components/responses/ValidationErrorResponse'
        '403':
          $ref: '#/components/responses/GenericErrorResponse'
    patch:
      operationId: lifecycle_rules_partial_update
      parameters:
      - in: path
        name: id
        schema:
          type: string
          format: uuid
        description: A UUID string identifying this lifecycle rule.
        required: true
      tags: