swagger: '2.0' info: title: authentik API contact: email: hello@beryju.org license: name: GNU GPLv3 url: https://github.com/BeryJu/authentik/blob/master/LICENSE version: v2 basePath: /api/v2beta consumes: - application/json produces: - application/json securityDefinitions: token: type: apiKey name: Authorization in: header security: - token: [] paths: /admin/metrics/: get: operationId: admin_metrics_list description: Login Metrics per 1h parameters: [] responses: '200': description: Login Metrics per 1h schema: description: '' type: array items: $ref: '#/definitions/AdministrationMetrics' tags: - admin parameters: [] /admin/system_tasks/: get: operationId: admin_system_tasks_list description: List current messages and pass into Serializer parameters: [] responses: '200': description: Serialize TaskInfo and TaskResult schema: description: '' type: array items: $ref: '#/definitions/Task' tags: - admin parameters: [] /admin/system_tasks/{id}/retry/: post: operationId: admin_system_tasks_retry description: Retry task parameters: [] responses: '201': description: '' tags: - admin parameters: - name: id in: path required: true type: string /admin/version/: get: operationId: admin_version_list description: Get running and latest version. parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: Get running and latest version. schema: description: '' type: array items: $ref: '#/definitions/Version' tags: - admin parameters: [] /admin/workers/: get: operationId: admin_workers_list description: Get currently connected worker count. parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: description: '' type: object properties: {} tags: - admin parameters: [] /core/applications/: get: operationId: core_applications_list description: Custom list method that checks Policy based access instead of guardian parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Application' tags: - core post: operationId: core_applications_create description: Application Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Application' responses: '201': description: '' schema: $ref: '#/definitions/Application' tags: - core parameters: [] /core/applications/{slug}/: get: operationId: core_applications_read description: Application Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Application' tags: - core put: operationId: core_applications_update description: Application Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Application' responses: '200': description: '' schema: $ref: '#/definitions/Application' tags: - core patch: operationId: core_applications_partial_update description: Application Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Application' responses: '200': description: '' schema: $ref: '#/definitions/Application' tags: - core delete: operationId: core_applications_delete description: Application Viewset parameters: [] responses: '204': description: '' tags: - core parameters: - name: slug in: path description: Internal application name, used in URLs. required: true type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ /core/applications/{slug}/metrics/: get: operationId: core_applications_metrics description: Metrics for application logins parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Application' tags: - core parameters: - name: slug in: path description: Internal application name, used in URLs. required: true type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ /core/groups/: get: operationId: core_groups_list description: Group Viewset parameters: - name: name in: query description: '' required: false type: string - name: is_superuser in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Group' tags: - core post: operationId: core_groups_create description: Group Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Group' responses: '201': description: '' schema: $ref: '#/definitions/Group' tags: - core parameters: [] /core/groups/{group_uuid}/: get: operationId: core_groups_read description: Group Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Group' tags: - core put: operationId: core_groups_update description: Group Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Group' responses: '200': description: '' schema: $ref: '#/definitions/Group' tags: - core patch: operationId: core_groups_partial_update description: Group Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Group' responses: '200': description: '' schema: $ref: '#/definitions/Group' tags: - core delete: operationId: core_groups_delete description: Group Viewset parameters: [] responses: '204': description: '' tags: - core parameters: - name: group_uuid in: path description: A UUID string identifying this group. required: true type: string format: uuid /core/tokens/: get: operationId: core_tokens_list description: Token Viewset parameters: - name: identifier in: query description: '' required: false type: string - name: intent in: query description: '' required: false type: string - name: user__username in: query description: '' required: false type: string - name: description in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Token' tags: - core post: operationId: core_tokens_create description: Token Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Token' responses: '201': description: '' schema: $ref: '#/definitions/Token' tags: - core parameters: [] /core/tokens/{identifier}/: get: operationId: core_tokens_read description: Token Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Token' tags: - core put: operationId: core_tokens_update description: Token Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Token' responses: '200': description: '' schema: $ref: '#/definitions/Token' tags: - core patch: operationId: core_tokens_partial_update description: Token Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Token' responses: '200': description: '' schema: $ref: '#/definitions/Token' tags: - core delete: operationId: core_tokens_delete description: Token Viewset parameters: [] responses: '204': description: '' tags: - core parameters: - name: identifier in: path required: true type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ /core/tokens/{identifier}/view_key/: get: operationId: core_tokens_view_key description: Return token key and log access parameters: [] responses: '200': description: Show token's current key schema: $ref: '#/definitions/TokenView' tags: - core parameters: - name: identifier in: path required: true type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ /core/users/: get: operationId: core_users_list description: User Viewset parameters: - name: username in: query description: '' required: false type: string - name: name in: query description: '' required: false type: string - name: is_active in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/User' tags: - core post: operationId: core_users_create description: User Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/User' responses: '201': description: '' schema: $ref: '#/definitions/User' tags: - core parameters: [] /core/users/me/: get: operationId: core_users_me description: Get information about current user parameters: - name: username in: query description: '' required: false type: string - name: name in: query description: '' required: false type: string - name: is_active in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: User Serializer schema: $ref: '#/definitions/User' tags: - core parameters: [] /core/users/{id}/: get: operationId: core_users_read description: User Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/User' tags: - core put: operationId: core_users_update description: User Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/User' responses: '200': description: '' schema: $ref: '#/definitions/User' tags: - core patch: operationId: core_users_partial_update description: User Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/User' responses: '200': description: '' schema: $ref: '#/definitions/User' tags: - core delete: operationId: core_users_delete description: User Viewset parameters: [] responses: '204': description: '' tags: - core parameters: - name: id in: path description: A unique integer value identifying this User. required: true type: integer /crypto/certificatekeypairs/: get: operationId: crypto_certificatekeypairs_list description: CertificateKeyPair Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/CertificateKeyPair' tags: - crypto post: operationId: crypto_certificatekeypairs_create description: CertificateKeyPair Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/CertificateKeyPair' responses: '201': description: '' schema: $ref: '#/definitions/CertificateKeyPair' tags: - crypto parameters: [] /crypto/certificatekeypairs/{kp_uuid}/: get: operationId: crypto_certificatekeypairs_read description: CertificateKeyPair Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/CertificateKeyPair' tags: - crypto put: operationId: crypto_certificatekeypairs_update description: CertificateKeyPair Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/CertificateKeyPair' responses: '200': description: '' schema: $ref: '#/definitions/CertificateKeyPair' tags: - crypto patch: operationId: crypto_certificatekeypairs_partial_update description: CertificateKeyPair Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/CertificateKeyPair' responses: '200': description: '' schema: $ref: '#/definitions/CertificateKeyPair' tags: - crypto delete: operationId: crypto_certificatekeypairs_delete description: CertificateKeyPair Viewset parameters: [] responses: '204': description: '' tags: - crypto parameters: - name: kp_uuid in: path description: A UUID string identifying this Certificate-Key Pair. required: true type: string format: uuid /crypto/certificatekeypairs/{kp_uuid}/view_certificate/: get: operationId: crypto_certificatekeypairs_view_certificate description: Return certificate-key pairs certificate and log access parameters: [] responses: '200': description: Get CertificateKeyPair's data schema: $ref: '#/definitions/CertificateData' tags: - crypto parameters: - name: kp_uuid in: path description: A UUID string identifying this Certificate-Key Pair. required: true type: string format: uuid /crypto/certificatekeypairs/{kp_uuid}/view_private_key/: get: operationId: crypto_certificatekeypairs_view_private_key description: Return certificate-key pairs private key and log access parameters: [] responses: '200': description: Get CertificateKeyPair's data schema: $ref: '#/definitions/CertificateData' tags: - crypto parameters: - name: kp_uuid in: path description: A UUID string identifying this Certificate-Key Pair. required: true type: string format: uuid /events/events/: get: operationId: events_events_list description: Event Read-Only Viewset parameters: - name: action in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Event' tags: - events parameters: [] /events/events/top_per_user/: get: operationId: events_events_top_per_user description: Get the top_n events grouped by user count parameters: - name: action in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: Response object of Event's top_per_user schema: description: '' type: array items: $ref: '#/definitions/EventTopPerUserSerialier' tags: - events parameters: [] /events/events/{event_uuid}/: get: operationId: events_events_read description: Event Read-Only Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Event' tags: - events parameters: - name: event_uuid in: path description: A UUID string identifying this Event. required: true type: string format: uuid /events/notifications/: get: operationId: events_notifications_list description: Notification Viewset parameters: - name: severity in: query description: '' required: false type: string - name: body in: query description: '' required: false type: string - name: created in: query description: '' required: false type: string - name: event in: query description: '' required: false type: string - name: seen in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Notification' tags: - events parameters: [] /events/notifications/{uuid}/: get: operationId: events_notifications_read description: Notification Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Notification' tags: - events put: operationId: events_notifications_update description: Notification Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Notification' responses: '200': description: '' schema: $ref: '#/definitions/Notification' tags: - events patch: operationId: events_notifications_partial_update description: Notification Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Notification' responses: '200': description: '' schema: $ref: '#/definitions/Notification' tags: - events delete: operationId: events_notifications_delete description: Notification Viewset parameters: [] responses: '204': description: '' tags: - events parameters: - name: uuid in: path description: A UUID string identifying this Notification. required: true type: string format: uuid /events/rules/: get: operationId: events_rules_list description: NotificationRule Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/NotificationRule' tags: - events post: operationId: events_rules_create description: NotificationRule Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/NotificationRule' responses: '201': description: '' schema: $ref: '#/definitions/NotificationRule' tags: - events parameters: [] /events/rules/{pbm_uuid}/: get: operationId: events_rules_read description: NotificationRule Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/NotificationRule' tags: - events put: operationId: events_rules_update description: NotificationRule Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/NotificationRule' responses: '200': description: '' schema: $ref: '#/definitions/NotificationRule' tags: - events patch: operationId: events_rules_partial_update description: NotificationRule Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/NotificationRule' responses: '200': description: '' schema: $ref: '#/definitions/NotificationRule' tags: - events delete: operationId: events_rules_delete description: NotificationRule Viewset parameters: [] responses: '204': description: '' tags: - events parameters: - name: pbm_uuid in: path description: A UUID string identifying this Notification Rule. required: true type: string format: uuid /events/transports/: get: operationId: events_transports_list description: NotificationTransport Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/NotificationTransport' tags: - events post: operationId: events_transports_create description: NotificationTransport Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/NotificationTransport' responses: '201': description: '' schema: $ref: '#/definitions/NotificationTransport' tags: - events parameters: [] /events/transports/{uuid}/: get: operationId: events_transports_read description: NotificationTransport Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/NotificationTransport' tags: - events put: operationId: events_transports_update description: NotificationTransport Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/NotificationTransport' responses: '200': description: '' schema: $ref: '#/definitions/NotificationTransport' tags: - events patch: operationId: events_transports_partial_update description: NotificationTransport Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/NotificationTransport' responses: '200': description: '' schema: $ref: '#/definitions/NotificationTransport' tags: - events delete: operationId: events_transports_delete description: NotificationTransport Viewset parameters: [] responses: '204': description: '' tags: - events parameters: - name: uuid in: path description: A UUID string identifying this Notification Transport. required: true type: string format: uuid /events/transports/{uuid}/test/: post: operationId: events_transports_test description: |- Send example notification using selected transport. Requires Modify permissions. parameters: - name: data in: body required: true schema: $ref: '#/definitions/NotificationTransport' responses: '201': description: '' schema: $ref: '#/definitions/NotificationTransport' tags: - events parameters: - name: uuid in: path description: A UUID string identifying this Notification Transport. required: true type: string format: uuid /flows/bindings/: get: operationId: flows_bindings_list description: FlowStageBinding Viewset parameters: - name: pbm_uuid in: query description: '' required: false type: string - name: policies in: query description: '' required: false type: string - name: fsb_uuid in: query description: '' required: false type: string - name: target in: query description: '' required: false type: string - name: stage in: query description: '' required: false type: string - name: evaluate_on_plan in: query description: '' required: false type: string - name: re_evaluate_policies in: query description: '' required: false type: string - name: order in: query description: '' required: false type: number - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/FlowStageBinding' tags: - flows post: operationId: flows_bindings_create description: FlowStageBinding Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/FlowStageBinding' responses: '201': description: '' schema: $ref: '#/definitions/FlowStageBinding' tags: - flows parameters: [] /flows/bindings/{fsb_uuid}/: get: operationId: flows_bindings_read description: FlowStageBinding Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/FlowStageBinding' tags: - flows put: operationId: flows_bindings_update description: FlowStageBinding Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/FlowStageBinding' responses: '200': description: '' schema: $ref: '#/definitions/FlowStageBinding' tags: - flows patch: operationId: flows_bindings_partial_update description: FlowStageBinding Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/FlowStageBinding' responses: '200': description: '' schema: $ref: '#/definitions/FlowStageBinding' tags: - flows delete: operationId: flows_bindings_delete description: FlowStageBinding Viewset parameters: [] responses: '204': description: '' tags: - flows parameters: - name: fsb_uuid in: path description: A UUID string identifying this Flow Stage Binding. required: true type: string format: uuid /flows/instances/: get: operationId: flows_instances_list description: Flow Viewset parameters: - name: flow_uuid in: query description: '' required: false type: string - name: name in: query description: '' required: false type: string - name: slug in: query description: '' required: false type: string - name: designation in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Flow' tags: - flows post: operationId: flows_instances_create description: Flow Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Flow' responses: '201': description: '' schema: $ref: '#/definitions/Flow' tags: - flows parameters: [] /flows/instances/cached/: get: operationId: flows_instances_cached description: Info about cached flows parameters: - name: flow_uuid in: query description: '' required: false type: string - name: name in: query description: '' required: false type: string - name: slug in: query description: '' required: false type: string - name: designation in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: Generic cache stats for an object schema: $ref: '#/definitions/Cache' tags: - flows parameters: [] /flows/instances/{slug}/: get: operationId: flows_instances_read description: Flow Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Flow' tags: - flows put: operationId: flows_instances_update description: Flow Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Flow' responses: '200': description: '' schema: $ref: '#/definitions/Flow' tags: - flows patch: operationId: flows_instances_partial_update description: Flow Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Flow' responses: '200': description: '' schema: $ref: '#/definitions/Flow' tags: - flows delete: operationId: flows_instances_delete description: Flow Viewset parameters: [] responses: '204': description: '' tags: - flows parameters: - name: slug in: path description: Visible in the URL. required: true type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ /flows/instances/{slug}/diagram/: get: operationId: flows_instances_diagram description: Return diagram for flow with slug `slug`, in the format used by flowchart.js parameters: [] responses: '200': description: response of the flow's /diagram/ action schema: $ref: '#/definitions/FlowDiagram' tags: - flows parameters: - name: slug in: path description: Visible in the URL. required: true type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ /outposts/outposts/: get: operationId: outposts_outposts_list description: Outpost Viewset parameters: - name: providers__isnull in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Outpost' tags: - outposts post: operationId: outposts_outposts_create description: Outpost Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Outpost' responses: '201': description: '' schema: $ref: '#/definitions/Outpost' tags: - outposts parameters: [] /outposts/outposts/{uuid}/: get: operationId: outposts_outposts_read description: Outpost Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Outpost' tags: - outposts put: operationId: outposts_outposts_update description: Outpost Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Outpost' responses: '200': description: '' schema: $ref: '#/definitions/Outpost' tags: - outposts patch: operationId: outposts_outposts_partial_update description: Outpost Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Outpost' responses: '200': description: '' schema: $ref: '#/definitions/Outpost' tags: - outposts delete: operationId: outposts_outposts_delete description: Outpost Viewset parameters: [] responses: '204': description: '' tags: - outposts parameters: - name: uuid in: path description: A UUID string identifying this outpost. required: true type: string format: uuid /outposts/outposts/{uuid}/health/: get: operationId: outposts_outposts_health description: Get outposts current health parameters: [] responses: '200': description: Outpost health status schema: description: '' type: array items: $ref: '#/definitions/OutpostHealth' tags: - outposts parameters: - name: uuid in: path description: A UUID string identifying this outpost. required: true type: string format: uuid /outposts/proxy/: get: operationId: outposts_proxy_list description: ProxyProvider Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/ProxyOutpostConfig' tags: - outposts post: operationId: outposts_proxy_create description: ProxyProvider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ProxyOutpostConfig' responses: '201': description: '' schema: $ref: '#/definitions/ProxyOutpostConfig' tags: - outposts parameters: [] /outposts/proxy/{id}/: get: operationId: outposts_proxy_read description: ProxyProvider Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/ProxyOutpostConfig' tags: - outposts put: operationId: outposts_proxy_update description: ProxyProvider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ProxyOutpostConfig' responses: '200': description: '' schema: $ref: '#/definitions/ProxyOutpostConfig' tags: - outposts patch: operationId: outposts_proxy_partial_update description: ProxyProvider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ProxyOutpostConfig' responses: '200': description: '' schema: $ref: '#/definitions/ProxyOutpostConfig' tags: - outposts delete: operationId: outposts_proxy_delete description: ProxyProvider Viewset parameters: [] responses: '204': description: '' tags: - outposts parameters: - name: id in: path description: A unique integer value identifying this Proxy Provider. required: true type: integer /outposts/service_connections/all/: get: operationId: outposts_service_connections_all_list description: ServiceConnection Viewset parameters: - name: name in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/ServiceConnection' tags: - outposts post: operationId: outposts_service_connections_all_create description: ServiceConnection Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ServiceConnection' responses: '201': description: '' schema: $ref: '#/definitions/ServiceConnection' tags: - outposts parameters: [] /outposts/service_connections/all/types/: get: operationId: outposts_service_connections_all_types description: Get all creatable service connection types parameters: - name: name in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: Types of an object that can be created schema: description: '' type: array items: $ref: '#/definitions/TypeCreate' tags: - outposts parameters: [] /outposts/service_connections/all/{uuid}/: get: operationId: outposts_service_connections_all_read description: ServiceConnection Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/ServiceConnection' tags: - outposts put: operationId: outposts_service_connections_all_update description: ServiceConnection Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ServiceConnection' responses: '200': description: '' schema: $ref: '#/definitions/ServiceConnection' tags: - outposts patch: operationId: outposts_service_connections_all_partial_update description: ServiceConnection Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ServiceConnection' responses: '200': description: '' schema: $ref: '#/definitions/ServiceConnection' tags: - outposts delete: operationId: outposts_service_connections_all_delete description: ServiceConnection Viewset parameters: [] responses: '204': description: '' tags: - outposts parameters: - name: uuid in: path description: A UUID string identifying this Outpost Service-Connection. required: true type: string format: uuid /outposts/service_connections/all/{uuid}/state/: get: operationId: outposts_service_connections_all_state description: Get the service connection's state parameters: [] responses: '200': description: Serializer for Service connection state schema: $ref: '#/definitions/ServiceConnectionState' tags: - outposts parameters: - name: uuid in: path description: A UUID string identifying this Outpost Service-Connection. required: true type: string format: uuid /outposts/service_connections/docker/: get: operationId: outposts_service_connections_docker_list description: DockerServiceConnection Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/DockerServiceConnection' tags: - outposts post: operationId: outposts_service_connections_docker_create description: DockerServiceConnection Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/DockerServiceConnection' responses: '201': description: '' schema: $ref: '#/definitions/DockerServiceConnection' tags: - outposts parameters: [] /outposts/service_connections/docker/{uuid}/: get: operationId: outposts_service_connections_docker_read description: DockerServiceConnection Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/DockerServiceConnection' tags: - outposts put: operationId: outposts_service_connections_docker_update description: DockerServiceConnection Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/DockerServiceConnection' responses: '200': description: '' schema: $ref: '#/definitions/DockerServiceConnection' tags: - outposts patch: operationId: outposts_service_connections_docker_partial_update description: DockerServiceConnection Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/DockerServiceConnection' responses: '200': description: '' schema: $ref: '#/definitions/DockerServiceConnection' tags: - outposts delete: operationId: outposts_service_connections_docker_delete description: DockerServiceConnection Viewset parameters: [] responses: '204': description: '' tags: - outposts parameters: - name: uuid in: path description: A UUID string identifying this Docker Service-Connection. required: true type: string format: uuid /outposts/service_connections/kubernetes/: get: operationId: outposts_service_connections_kubernetes_list description: KubernetesServiceConnection Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/KubernetesServiceConnection' tags: - outposts post: operationId: outposts_service_connections_kubernetes_create description: KubernetesServiceConnection Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/KubernetesServiceConnection' responses: '201': description: '' schema: $ref: '#/definitions/KubernetesServiceConnection' tags: - outposts parameters: [] /outposts/service_connections/kubernetes/{uuid}/: get: operationId: outposts_service_connections_kubernetes_read description: KubernetesServiceConnection Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/KubernetesServiceConnection' tags: - outposts put: operationId: outposts_service_connections_kubernetes_update description: KubernetesServiceConnection Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/KubernetesServiceConnection' responses: '200': description: '' schema: $ref: '#/definitions/KubernetesServiceConnection' tags: - outposts patch: operationId: outposts_service_connections_kubernetes_partial_update description: KubernetesServiceConnection Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/KubernetesServiceConnection' responses: '200': description: '' schema: $ref: '#/definitions/KubernetesServiceConnection' tags: - outposts delete: operationId: outposts_service_connections_kubernetes_delete description: KubernetesServiceConnection Viewset parameters: [] responses: '204': description: '' tags: - outposts parameters: - name: uuid in: path description: A UUID string identifying this Kubernetes Service-Connection. required: true type: string format: uuid /policies/all/: get: operationId: policies_all_list description: Policy Viewset parameters: - name: bindings__isnull in: query description: '' required: false type: string - name: promptstage__isnull in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Policy' tags: - policies parameters: [] /policies/all/cached/: get: operationId: policies_all_cached description: Info about cached policies parameters: - name: bindings__isnull in: query description: '' required: false type: string - name: promptstage__isnull in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: Generic cache stats for an object schema: $ref: '#/definitions/Cache' tags: - policies parameters: [] /policies/all/types/: get: operationId: policies_all_types description: Get all creatable policy types parameters: - name: bindings__isnull in: query description: '' required: false type: string - name: promptstage__isnull in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: Types of an object that can be created schema: description: '' type: array items: $ref: '#/definitions/TypeCreate' tags: - policies parameters: [] /policies/all/{policy_uuid}/: get: operationId: policies_all_read description: Policy Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Policy' tags: - policies parameters: - name: policy_uuid in: path description: A UUID string identifying this Policy. required: true type: string format: uuid /policies/bindings/: get: operationId: policies_bindings_list description: PolicyBinding Viewset parameters: - name: policy in: query description: '' required: false type: string - name: target in: query description: '' required: false type: string - name: enabled in: query description: '' required: false type: string - name: order in: query description: '' required: false type: number - name: timeout in: query description: '' required: false type: number - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/PolicyBinding' tags: - policies post: operationId: policies_bindings_create description: PolicyBinding Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PolicyBinding' responses: '201': description: '' schema: $ref: '#/definitions/PolicyBinding' tags: - policies parameters: [] /policies/bindings/{policy_binding_uuid}/: get: operationId: policies_bindings_read description: PolicyBinding Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/PolicyBinding' tags: - policies put: operationId: policies_bindings_update description: PolicyBinding Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PolicyBinding' responses: '200': description: '' schema: $ref: '#/definitions/PolicyBinding' tags: - policies patch: operationId: policies_bindings_partial_update description: PolicyBinding Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PolicyBinding' responses: '200': description: '' schema: $ref: '#/definitions/PolicyBinding' tags: - policies delete: operationId: policies_bindings_delete description: PolicyBinding Viewset parameters: [] responses: '204': description: '' tags: - policies parameters: - name: policy_binding_uuid in: path description: A UUID string identifying this Policy Binding. required: true type: string format: uuid /policies/dummy/: get: operationId: policies_dummy_list description: Dummy Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/DummyPolicy' tags: - policies post: operationId: policies_dummy_create description: Dummy Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/DummyPolicy' responses: '201': description: '' schema: $ref: '#/definitions/DummyPolicy' tags: - policies parameters: [] /policies/dummy/{policy_uuid}/: get: operationId: policies_dummy_read description: Dummy Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/DummyPolicy' tags: - policies put: operationId: policies_dummy_update description: Dummy Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/DummyPolicy' responses: '200': description: '' schema: $ref: '#/definitions/DummyPolicy' tags: - policies patch: operationId: policies_dummy_partial_update description: Dummy Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/DummyPolicy' responses: '200': description: '' schema: $ref: '#/definitions/DummyPolicy' tags: - policies delete: operationId: policies_dummy_delete description: Dummy Viewset parameters: [] responses: '204': description: '' tags: - policies parameters: - name: policy_uuid in: path description: A UUID string identifying this Dummy Policy. required: true type: string format: uuid /policies/event_matcher/: get: operationId: policies_event_matcher_list description: Event Matcher Policy Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/EventMatcherPolicy' tags: - policies post: operationId: policies_event_matcher_create description: Event Matcher Policy Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/EventMatcherPolicy' responses: '201': description: '' schema: $ref: '#/definitions/EventMatcherPolicy' tags: - policies parameters: [] /policies/event_matcher/{policy_uuid}/: get: operationId: policies_event_matcher_read description: Event Matcher Policy Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/EventMatcherPolicy' tags: - policies put: operationId: policies_event_matcher_update description: Event Matcher Policy Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/EventMatcherPolicy' responses: '200': description: '' schema: $ref: '#/definitions/EventMatcherPolicy' tags: - policies patch: operationId: policies_event_matcher_partial_update description: Event Matcher Policy Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/EventMatcherPolicy' responses: '200': description: '' schema: $ref: '#/definitions/EventMatcherPolicy' tags: - policies delete: operationId: policies_event_matcher_delete description: Event Matcher Policy Viewset parameters: [] responses: '204': description: '' tags: - policies parameters: - name: policy_uuid in: path description: A UUID string identifying this Event Matcher Policy. required: true type: string format: uuid /policies/expression/: get: operationId: policies_expression_list description: Source Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/ExpressionPolicy' tags: - policies post: operationId: policies_expression_create description: Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ExpressionPolicy' responses: '201': description: '' schema: $ref: '#/definitions/ExpressionPolicy' tags: - policies parameters: [] /policies/expression/{policy_uuid}/: get: operationId: policies_expression_read description: Source Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/ExpressionPolicy' tags: - policies put: operationId: policies_expression_update description: Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ExpressionPolicy' responses: '200': description: '' schema: $ref: '#/definitions/ExpressionPolicy' tags: - policies patch: operationId: policies_expression_partial_update description: Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ExpressionPolicy' responses: '200': description: '' schema: $ref: '#/definitions/ExpressionPolicy' tags: - policies delete: operationId: policies_expression_delete description: Source Viewset parameters: [] responses: '204': description: '' tags: - policies parameters: - name: policy_uuid in: path description: A UUID string identifying this Expression Policy. required: true type: string format: uuid /policies/group_membership/: get: operationId: policies_group_membership_list description: Group Membership Policy Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/GroupMembershipPolicy' tags: - policies post: operationId: policies_group_membership_create description: Group Membership Policy Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/GroupMembershipPolicy' responses: '201': description: '' schema: $ref: '#/definitions/GroupMembershipPolicy' tags: - policies parameters: [] /policies/group_membership/{policy_uuid}/: get: operationId: policies_group_membership_read description: Group Membership Policy Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/GroupMembershipPolicy' tags: - policies put: operationId: policies_group_membership_update description: Group Membership Policy Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/GroupMembershipPolicy' responses: '200': description: '' schema: $ref: '#/definitions/GroupMembershipPolicy' tags: - policies patch: operationId: policies_group_membership_partial_update description: Group Membership Policy Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/GroupMembershipPolicy' responses: '200': description: '' schema: $ref: '#/definitions/GroupMembershipPolicy' tags: - policies delete: operationId: policies_group_membership_delete description: Group Membership Policy Viewset parameters: [] responses: '204': description: '' tags: - policies parameters: - name: policy_uuid in: path description: A UUID string identifying this Group Membership Policy (deprecated). required: true type: string format: uuid /policies/haveibeenpwned/: get: operationId: policies_haveibeenpwned_list description: Source Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/HaveIBeenPwendPolicy' tags: - policies post: operationId: policies_haveibeenpwned_create description: Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/HaveIBeenPwendPolicy' responses: '201': description: '' schema: $ref: '#/definitions/HaveIBeenPwendPolicy' tags: - policies parameters: [] /policies/haveibeenpwned/{policy_uuid}/: get: operationId: policies_haveibeenpwned_read description: Source Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/HaveIBeenPwendPolicy' tags: - policies put: operationId: policies_haveibeenpwned_update description: Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/HaveIBeenPwendPolicy' responses: '200': description: '' schema: $ref: '#/definitions/HaveIBeenPwendPolicy' tags: - policies patch: operationId: policies_haveibeenpwned_partial_update description: Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/HaveIBeenPwendPolicy' responses: '200': description: '' schema: $ref: '#/definitions/HaveIBeenPwendPolicy' tags: - policies delete: operationId: policies_haveibeenpwned_delete description: Source Viewset parameters: [] responses: '204': description: '' tags: - policies parameters: - name: policy_uuid in: path description: A UUID string identifying this Have I Been Pwned Policy. required: true type: string format: uuid /policies/password/: get: operationId: policies_password_list description: Password Policy Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/PasswordPolicy' tags: - policies post: operationId: policies_password_create description: Password Policy Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PasswordPolicy' responses: '201': description: '' schema: $ref: '#/definitions/PasswordPolicy' tags: - policies parameters: [] /policies/password/{policy_uuid}/: get: operationId: policies_password_read description: Password Policy Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/PasswordPolicy' tags: - policies put: operationId: policies_password_update description: Password Policy Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PasswordPolicy' responses: '200': description: '' schema: $ref: '#/definitions/PasswordPolicy' tags: - policies patch: operationId: policies_password_partial_update description: Password Policy Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PasswordPolicy' responses: '200': description: '' schema: $ref: '#/definitions/PasswordPolicy' tags: - policies delete: operationId: policies_password_delete description: Password Policy Viewset parameters: [] responses: '204': description: '' tags: - policies parameters: - name: policy_uuid in: path description: A UUID string identifying this Password Policy. required: true type: string format: uuid /policies/password_expiry/: get: operationId: policies_password_expiry_list description: Password Expiry Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/PasswordExpiryPolicy' tags: - policies post: operationId: policies_password_expiry_create description: Password Expiry Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PasswordExpiryPolicy' responses: '201': description: '' schema: $ref: '#/definitions/PasswordExpiryPolicy' tags: - policies parameters: [] /policies/password_expiry/{policy_uuid}/: get: operationId: policies_password_expiry_read description: Password Expiry Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/PasswordExpiryPolicy' tags: - policies put: operationId: policies_password_expiry_update description: Password Expiry Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PasswordExpiryPolicy' responses: '200': description: '' schema: $ref: '#/definitions/PasswordExpiryPolicy' tags: - policies patch: operationId: policies_password_expiry_partial_update description: Password Expiry Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PasswordExpiryPolicy' responses: '200': description: '' schema: $ref: '#/definitions/PasswordExpiryPolicy' tags: - policies delete: operationId: policies_password_expiry_delete description: Password Expiry Viewset parameters: [] responses: '204': description: '' tags: - policies parameters: - name: policy_uuid in: path description: A UUID string identifying this Password Expiry Policy. required: true type: string format: uuid /policies/reputation/: get: operationId: policies_reputation_list description: Source Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/ReputationPolicy' tags: - policies post: operationId: policies_reputation_create description: Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ReputationPolicy' responses: '201': description: '' schema: $ref: '#/definitions/ReputationPolicy' tags: - policies parameters: [] /policies/reputation/{policy_uuid}/: get: operationId: policies_reputation_read description: Source Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/ReputationPolicy' tags: - policies put: operationId: policies_reputation_update description: Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ReputationPolicy' responses: '200': description: '' schema: $ref: '#/definitions/ReputationPolicy' tags: - policies patch: operationId: policies_reputation_partial_update description: Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ReputationPolicy' responses: '200': description: '' schema: $ref: '#/definitions/ReputationPolicy' tags: - policies delete: operationId: policies_reputation_delete description: Source Viewset parameters: [] responses: '204': description: '' tags: - policies parameters: - name: policy_uuid in: path description: A UUID string identifying this Reputation Policy. required: true type: string format: uuid /propertymappings/all/: get: operationId: propertymappings_all_list description: PropertyMapping Viewset parameters: - name: managed__isnull in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/PropertyMapping' tags: - propertymappings parameters: [] /propertymappings/all/types/: get: operationId: propertymappings_all_types description: Get all creatable property-mapping types parameters: - name: managed__isnull in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: Types of an object that can be created schema: description: '' type: array items: $ref: '#/definitions/TypeCreate' tags: - propertymappings parameters: [] /propertymappings/all/{pm_uuid}/: get: operationId: propertymappings_all_read description: PropertyMapping Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/PropertyMapping' tags: - propertymappings parameters: - name: pm_uuid in: path description: A UUID string identifying this Property Mapping. required: true type: string format: uuid /propertymappings/ldap/: get: operationId: propertymappings_ldap_list description: LDAP PropertyMapping Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/LDAPPropertyMapping' tags: - propertymappings post: operationId: propertymappings_ldap_create description: LDAP PropertyMapping Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/LDAPPropertyMapping' responses: '201': description: '' schema: $ref: '#/definitions/LDAPPropertyMapping' tags: - propertymappings parameters: [] /propertymappings/ldap/{pm_uuid}/: get: operationId: propertymappings_ldap_read description: LDAP PropertyMapping Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/LDAPPropertyMapping' tags: - propertymappings put: operationId: propertymappings_ldap_update description: LDAP PropertyMapping Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/LDAPPropertyMapping' responses: '200': description: '' schema: $ref: '#/definitions/LDAPPropertyMapping' tags: - propertymappings patch: operationId: propertymappings_ldap_partial_update description: LDAP PropertyMapping Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/LDAPPropertyMapping' responses: '200': description: '' schema: $ref: '#/definitions/LDAPPropertyMapping' tags: - propertymappings delete: operationId: propertymappings_ldap_delete description: LDAP PropertyMapping Viewset parameters: [] responses: '204': description: '' tags: - propertymappings parameters: - name: pm_uuid in: path description: A UUID string identifying this LDAP Property Mapping. required: true type: string format: uuid /propertymappings/saml/: get: operationId: propertymappings_saml_list description: SAMLPropertyMapping Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/SAMLPropertyMapping' tags: - propertymappings post: operationId: propertymappings_saml_create description: SAMLPropertyMapping Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/SAMLPropertyMapping' responses: '201': description: '' schema: $ref: '#/definitions/SAMLPropertyMapping' tags: - propertymappings parameters: [] /propertymappings/saml/{pm_uuid}/: get: operationId: propertymappings_saml_read description: SAMLPropertyMapping Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/SAMLPropertyMapping' tags: - propertymappings put: operationId: propertymappings_saml_update description: SAMLPropertyMapping Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/SAMLPropertyMapping' responses: '200': description: '' schema: $ref: '#/definitions/SAMLPropertyMapping' tags: - propertymappings patch: operationId: propertymappings_saml_partial_update description: SAMLPropertyMapping Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/SAMLPropertyMapping' responses: '200': description: '' schema: $ref: '#/definitions/SAMLPropertyMapping' tags: - propertymappings delete: operationId: propertymappings_saml_delete description: SAMLPropertyMapping Viewset parameters: [] responses: '204': description: '' tags: - propertymappings parameters: - name: pm_uuid in: path description: A UUID string identifying this SAML Property Mapping. required: true type: string format: uuid /propertymappings/scope/: get: operationId: propertymappings_scope_list description: ScopeMapping Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/ScopeMapping' tags: - propertymappings post: operationId: propertymappings_scope_create description: ScopeMapping Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ScopeMapping' responses: '201': description: '' schema: $ref: '#/definitions/ScopeMapping' tags: - propertymappings parameters: [] /propertymappings/scope/{pm_uuid}/: get: operationId: propertymappings_scope_read description: ScopeMapping Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/ScopeMapping' tags: - propertymappings put: operationId: propertymappings_scope_update description: ScopeMapping Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ScopeMapping' responses: '200': description: '' schema: $ref: '#/definitions/ScopeMapping' tags: - propertymappings patch: operationId: propertymappings_scope_partial_update description: ScopeMapping Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ScopeMapping' responses: '200': description: '' schema: $ref: '#/definitions/ScopeMapping' tags: - propertymappings delete: operationId: propertymappings_scope_delete description: ScopeMapping Viewset parameters: [] responses: '204': description: '' tags: - propertymappings parameters: - name: pm_uuid in: path description: A UUID string identifying this Scope Mapping. required: true type: string format: uuid /providers/all/: get: operationId: providers_all_list description: Provider Viewset parameters: - name: application__isnull in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Provider' tags: - providers post: operationId: providers_all_create description: Provider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Provider' responses: '201': description: '' schema: $ref: '#/definitions/Provider' tags: - providers parameters: [] /providers/all/types/: get: operationId: providers_all_types description: Get all creatable provider types parameters: - name: application__isnull in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: Types of an object that can be created schema: description: '' type: array items: $ref: '#/definitions/TypeCreate' tags: - providers parameters: [] /providers/all/{id}/: get: operationId: providers_all_read description: Provider Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Provider' tags: - providers put: operationId: providers_all_update description: Provider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Provider' responses: '200': description: '' schema: $ref: '#/definitions/Provider' tags: - providers patch: operationId: providers_all_partial_update description: Provider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Provider' responses: '200': description: '' schema: $ref: '#/definitions/Provider' tags: - providers delete: operationId: providers_all_delete description: Provider Viewset parameters: [] responses: '204': description: '' tags: - providers parameters: - name: id in: path description: A unique integer value identifying this provider. required: true type: integer /providers/oauth2/: get: operationId: providers_oauth2_list description: OAuth2Provider Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/OAuth2Provider' tags: - providers post: operationId: providers_oauth2_create description: OAuth2Provider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/OAuth2Provider' responses: '201': description: '' schema: $ref: '#/definitions/OAuth2Provider' tags: - providers parameters: [] /providers/oauth2/{id}/: get: operationId: providers_oauth2_read description: OAuth2Provider Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/OAuth2Provider' tags: - providers put: operationId: providers_oauth2_update description: OAuth2Provider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/OAuth2Provider' responses: '200': description: '' schema: $ref: '#/definitions/OAuth2Provider' tags: - providers patch: operationId: providers_oauth2_partial_update description: OAuth2Provider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/OAuth2Provider' responses: '200': description: '' schema: $ref: '#/definitions/OAuth2Provider' tags: - providers delete: operationId: providers_oauth2_delete description: OAuth2Provider Viewset parameters: [] responses: '204': description: '' tags: - providers parameters: - name: id in: path description: A unique integer value identifying this OAuth2/OpenID Provider. required: true type: integer /providers/oauth2/{id}/setup_urls/: get: operationId: providers_oauth2_setup_urls description: Get Providers setup URLs parameters: [] responses: '200': description: OAuth2 Provider Metadata serializer schema: $ref: '#/definitions/OAuth2ProviderSetupURLs' tags: - providers parameters: - name: id in: path description: A unique integer value identifying this OAuth2/OpenID Provider. required: true type: integer /providers/proxy/: get: operationId: providers_proxy_list description: ProxyProvider Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/ProxyProvider' tags: - providers post: operationId: providers_proxy_create description: ProxyProvider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ProxyProvider' responses: '201': description: '' schema: $ref: '#/definitions/ProxyProvider' tags: - providers parameters: [] /providers/proxy/{id}/: get: operationId: providers_proxy_read description: ProxyProvider Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/ProxyProvider' tags: - providers put: operationId: providers_proxy_update description: ProxyProvider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ProxyProvider' responses: '200': description: '' schema: $ref: '#/definitions/ProxyProvider' tags: - providers patch: operationId: providers_proxy_partial_update description: ProxyProvider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ProxyProvider' responses: '200': description: '' schema: $ref: '#/definitions/ProxyProvider' tags: - providers delete: operationId: providers_proxy_delete description: ProxyProvider Viewset parameters: [] responses: '204': description: '' tags: - providers parameters: - name: id in: path description: A unique integer value identifying this Proxy Provider. required: true type: integer /providers/saml/: get: operationId: providers_saml_list description: SAMLProvider Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/SAMLProvider' tags: - providers post: operationId: providers_saml_create description: SAMLProvider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/SAMLProvider' responses: '201': description: '' schema: $ref: '#/definitions/SAMLProvider' tags: - providers parameters: [] /providers/saml/{id}/: get: operationId: providers_saml_read description: SAMLProvider Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/SAMLProvider' tags: - providers put: operationId: providers_saml_update description: SAMLProvider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/SAMLProvider' responses: '200': description: '' schema: $ref: '#/definitions/SAMLProvider' tags: - providers patch: operationId: providers_saml_partial_update description: SAMLProvider Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/SAMLProvider' responses: '200': description: '' schema: $ref: '#/definitions/SAMLProvider' tags: - providers delete: operationId: providers_saml_delete description: SAMLProvider Viewset parameters: [] responses: '204': description: '' tags: - providers parameters: - name: id in: path description: A unique integer value identifying this SAML Provider. required: true type: integer /providers/saml/{id}/metadata/: get: operationId: providers_saml_metadata description: Return metadata as XML string parameters: [] responses: '200': description: SAML Provider Metadata serializer schema: $ref: '#/definitions/SAMLMetadata' tags: - providers parameters: - name: id in: path description: A unique integer value identifying this SAML Provider. required: true type: integer /root/config/: get: operationId: root_config_list description: Retrive public configuration options parameters: [] responses: '200': description: Serialize authentik Config into DRF Object schema: description: '' type: array items: $ref: '#/definitions/Config' tags: - root parameters: [] /root/messages/: get: operationId: root_messages_list description: List current messages and pass into Serializer parameters: [] responses: '200': description: Serialize Django Message into DRF Object schema: description: '' type: array items: $ref: '#/definitions/Message' tags: - root parameters: [] /sources/all/: get: operationId: sources_all_list description: Source Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Source' tags: - sources parameters: [] /sources/all/types/: get: operationId: sources_all_types description: Get all creatable source types parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: Types of an object that can be created schema: description: '' type: array items: $ref: '#/definitions/TypeCreate' tags: - sources parameters: [] /sources/all/{slug}/: get: operationId: sources_all_read description: Source Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Source' tags: - sources parameters: - name: slug in: path description: Internal source name, used in URLs. required: true type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ /sources/ldap/: get: operationId: sources_ldap_list description: LDAP Source Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/LDAPSource' tags: - sources post: operationId: sources_ldap_create description: LDAP Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/LDAPSource' responses: '201': description: '' schema: $ref: '#/definitions/LDAPSource' tags: - sources parameters: [] /sources/ldap/{slug}/: get: operationId: sources_ldap_read description: LDAP Source Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/LDAPSource' tags: - sources put: operationId: sources_ldap_update description: LDAP Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/LDAPSource' responses: '200': description: '' schema: $ref: '#/definitions/LDAPSource' tags: - sources patch: operationId: sources_ldap_partial_update description: LDAP Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/LDAPSource' responses: '200': description: '' schema: $ref: '#/definitions/LDAPSource' tags: - sources delete: operationId: sources_ldap_delete description: LDAP Source Viewset parameters: [] responses: '204': description: '' tags: - sources parameters: - name: slug in: path description: Internal source name, used in URLs. required: true type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ /sources/ldap/{slug}/sync_status/: get: operationId: sources_ldap_sync_status description: Get source's sync status parameters: [] responses: '200': description: LDAP Sync status schema: $ref: '#/definitions/LDAPSourceSyncStatus' tags: - sources parameters: - name: slug in: path description: Internal source name, used in URLs. required: true type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ /sources/oauth/: get: operationId: sources_oauth_list description: Source Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/OAuthSource' tags: - sources post: operationId: sources_oauth_create description: Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/OAuthSource' responses: '201': description: '' schema: $ref: '#/definitions/OAuthSource' tags: - sources parameters: [] /sources/oauth/{slug}/: get: operationId: sources_oauth_read description: Source Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/OAuthSource' tags: - sources put: operationId: sources_oauth_update description: Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/OAuthSource' responses: '200': description: '' schema: $ref: '#/definitions/OAuthSource' tags: - sources patch: operationId: sources_oauth_partial_update description: Source Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/OAuthSource' responses: '200': description: '' schema: $ref: '#/definitions/OAuthSource' tags: - sources delete: operationId: sources_oauth_delete description: Source Viewset parameters: [] responses: '204': description: '' tags: - sources parameters: - name: slug in: path description: Internal source name, used in URLs. required: true type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ /sources/saml/: get: operationId: sources_saml_list description: SAMLSource Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/SAMLSource' tags: - sources post: operationId: sources_saml_create description: SAMLSource Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/SAMLSource' responses: '201': description: '' schema: $ref: '#/definitions/SAMLSource' tags: - sources parameters: [] /sources/saml/{slug}/: get: operationId: sources_saml_read description: SAMLSource Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/SAMLSource' tags: - sources put: operationId: sources_saml_update description: SAMLSource Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/SAMLSource' responses: '200': description: '' schema: $ref: '#/definitions/SAMLSource' tags: - sources patch: operationId: sources_saml_partial_update description: SAMLSource Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/SAMLSource' responses: '200': description: '' schema: $ref: '#/definitions/SAMLSource' tags: - sources delete: operationId: sources_saml_delete description: SAMLSource Viewset parameters: [] responses: '204': description: '' tags: - sources parameters: - name: slug in: path description: Internal source name, used in URLs. required: true type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ /sources/saml/{slug}/metadata/: get: operationId: sources_saml_metadata description: Return metadata as XML string parameters: [] responses: '200': description: SAML Provider Metadata serializer schema: $ref: '#/definitions/SAMLMetadata' tags: - sources parameters: - name: slug in: path description: Internal source name, used in URLs. required: true type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ /stages/all/: get: operationId: stages_all_list description: Stage Viewset parameters: - name: name in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Stage' tags: - stages parameters: [] /stages/all/types/: get: operationId: stages_all_types description: Get all creatable stage types parameters: - name: name in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: Types of an object that can be created schema: description: '' type: array items: $ref: '#/definitions/TypeCreate' tags: - stages parameters: [] /stages/all/{stage_uuid}/: get: operationId: stages_all_read description: Stage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Stage' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this stage. required: true type: string format: uuid /stages/authenticator/static/: get: operationId: stages_authenticator_static_list description: AuthenticatorStaticStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/AuthenticatorStaticStage' tags: - stages post: operationId: stages_authenticator_static_create description: AuthenticatorStaticStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/AuthenticatorStaticStage' responses: '201': description: '' schema: $ref: '#/definitions/AuthenticatorStaticStage' tags: - stages parameters: [] /stages/authenticator/static/{stage_uuid}/: get: operationId: stages_authenticator_static_read description: AuthenticatorStaticStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/AuthenticatorStaticStage' tags: - stages put: operationId: stages_authenticator_static_update description: AuthenticatorStaticStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/AuthenticatorStaticStage' responses: '200': description: '' schema: $ref: '#/definitions/AuthenticatorStaticStage' tags: - stages patch: operationId: stages_authenticator_static_partial_update description: AuthenticatorStaticStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/AuthenticatorStaticStage' responses: '200': description: '' schema: $ref: '#/definitions/AuthenticatorStaticStage' tags: - stages delete: operationId: stages_authenticator_static_delete description: AuthenticatorStaticStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this Static Authenticator Stage. required: true type: string format: uuid /stages/authenticator/totp/: get: operationId: stages_authenticator_totp_list description: AuthenticatorTOTPStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/AuthenticatorTOTPStage' tags: - stages post: operationId: stages_authenticator_totp_create description: AuthenticatorTOTPStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/AuthenticatorTOTPStage' responses: '201': description: '' schema: $ref: '#/definitions/AuthenticatorTOTPStage' tags: - stages parameters: [] /stages/authenticator/totp/{stage_uuid}/: get: operationId: stages_authenticator_totp_read description: AuthenticatorTOTPStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/AuthenticatorTOTPStage' tags: - stages put: operationId: stages_authenticator_totp_update description: AuthenticatorTOTPStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/AuthenticatorTOTPStage' responses: '200': description: '' schema: $ref: '#/definitions/AuthenticatorTOTPStage' tags: - stages patch: operationId: stages_authenticator_totp_partial_update description: AuthenticatorTOTPStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/AuthenticatorTOTPStage' responses: '200': description: '' schema: $ref: '#/definitions/AuthenticatorTOTPStage' tags: - stages delete: operationId: stages_authenticator_totp_delete description: AuthenticatorTOTPStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this TOTP Authenticator Setup Stage. required: true type: string format: uuid /stages/authenticator/validate/: get: operationId: stages_authenticator_validate_list description: AuthenticatorValidateStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/AuthenticatorValidateStage' tags: - stages post: operationId: stages_authenticator_validate_create description: AuthenticatorValidateStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/AuthenticatorValidateStage' responses: '201': description: '' schema: $ref: '#/definitions/AuthenticatorValidateStage' tags: - stages parameters: [] /stages/authenticator/validate/{stage_uuid}/: get: operationId: stages_authenticator_validate_read description: AuthenticatorValidateStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/AuthenticatorValidateStage' tags: - stages put: operationId: stages_authenticator_validate_update description: AuthenticatorValidateStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/AuthenticatorValidateStage' responses: '200': description: '' schema: $ref: '#/definitions/AuthenticatorValidateStage' tags: - stages patch: operationId: stages_authenticator_validate_partial_update description: AuthenticatorValidateStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/AuthenticatorValidateStage' responses: '200': description: '' schema: $ref: '#/definitions/AuthenticatorValidateStage' tags: - stages delete: operationId: stages_authenticator_validate_delete description: AuthenticatorValidateStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this Authenticator Validation Stage. required: true type: string format: uuid /stages/authenticator/webauthn/: get: operationId: stages_authenticator_webauthn_list description: AuthenticateWebAuthnStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/AuthenticateWebAuthnStage' tags: - stages post: operationId: stages_authenticator_webauthn_create description: AuthenticateWebAuthnStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/AuthenticateWebAuthnStage' responses: '201': description: '' schema: $ref: '#/definitions/AuthenticateWebAuthnStage' tags: - stages parameters: [] /stages/authenticator/webauthn/{stage_uuid}/: get: operationId: stages_authenticator_webauthn_read description: AuthenticateWebAuthnStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/AuthenticateWebAuthnStage' tags: - stages put: operationId: stages_authenticator_webauthn_update description: AuthenticateWebAuthnStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/AuthenticateWebAuthnStage' responses: '200': description: '' schema: $ref: '#/definitions/AuthenticateWebAuthnStage' tags: - stages patch: operationId: stages_authenticator_webauthn_partial_update description: AuthenticateWebAuthnStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/AuthenticateWebAuthnStage' responses: '200': description: '' schema: $ref: '#/definitions/AuthenticateWebAuthnStage' tags: - stages delete: operationId: stages_authenticator_webauthn_delete description: AuthenticateWebAuthnStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this WebAuthn Authenticator Setup Stage. required: true type: string format: uuid /stages/captcha/: get: operationId: stages_captcha_list description: CaptchaStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/CaptchaStage' tags: - stages post: operationId: stages_captcha_create description: CaptchaStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/CaptchaStage' responses: '201': description: '' schema: $ref: '#/definitions/CaptchaStage' tags: - stages parameters: [] /stages/captcha/{stage_uuid}/: get: operationId: stages_captcha_read description: CaptchaStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/CaptchaStage' tags: - stages put: operationId: stages_captcha_update description: CaptchaStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/CaptchaStage' responses: '200': description: '' schema: $ref: '#/definitions/CaptchaStage' tags: - stages patch: operationId: stages_captcha_partial_update description: CaptchaStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/CaptchaStage' responses: '200': description: '' schema: $ref: '#/definitions/CaptchaStage' tags: - stages delete: operationId: stages_captcha_delete description: CaptchaStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this Captcha Stage. required: true type: string format: uuid /stages/consent/: get: operationId: stages_consent_list description: ConsentStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/ConsentStage' tags: - stages post: operationId: stages_consent_create description: ConsentStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ConsentStage' responses: '201': description: '' schema: $ref: '#/definitions/ConsentStage' tags: - stages parameters: [] /stages/consent/{stage_uuid}/: get: operationId: stages_consent_read description: ConsentStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/ConsentStage' tags: - stages put: operationId: stages_consent_update description: ConsentStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ConsentStage' responses: '200': description: '' schema: $ref: '#/definitions/ConsentStage' tags: - stages patch: operationId: stages_consent_partial_update description: ConsentStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/ConsentStage' responses: '200': description: '' schema: $ref: '#/definitions/ConsentStage' tags: - stages delete: operationId: stages_consent_delete description: ConsentStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this Consent Stage. required: true type: string format: uuid /stages/dummy/: get: operationId: stages_dummy_list description: DummyStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/DummyStage' tags: - stages post: operationId: stages_dummy_create description: DummyStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/DummyStage' responses: '201': description: '' schema: $ref: '#/definitions/DummyStage' tags: - stages parameters: [] /stages/dummy/{stage_uuid}/: get: operationId: stages_dummy_read description: DummyStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/DummyStage' tags: - stages put: operationId: stages_dummy_update description: DummyStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/DummyStage' responses: '200': description: '' schema: $ref: '#/definitions/DummyStage' tags: - stages patch: operationId: stages_dummy_partial_update description: DummyStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/DummyStage' responses: '200': description: '' schema: $ref: '#/definitions/DummyStage' tags: - stages delete: operationId: stages_dummy_delete description: DummyStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this Dummy Stage. required: true type: string format: uuid /stages/email/: get: operationId: stages_email_list description: EmailStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/EmailStage' tags: - stages post: operationId: stages_email_create description: EmailStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/EmailStage' responses: '201': description: '' schema: $ref: '#/definitions/EmailStage' tags: - stages parameters: [] /stages/email/{stage_uuid}/: get: operationId: stages_email_read description: EmailStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/EmailStage' tags: - stages put: operationId: stages_email_update description: EmailStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/EmailStage' responses: '200': description: '' schema: $ref: '#/definitions/EmailStage' tags: - stages patch: operationId: stages_email_partial_update description: EmailStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/EmailStage' responses: '200': description: '' schema: $ref: '#/definitions/EmailStage' tags: - stages delete: operationId: stages_email_delete description: EmailStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this Email Stage. required: true type: string format: uuid /stages/identification/: get: operationId: stages_identification_list description: IdentificationStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/IdentificationStage' tags: - stages post: operationId: stages_identification_create description: IdentificationStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/IdentificationStage' responses: '201': description: '' schema: $ref: '#/definitions/IdentificationStage' tags: - stages parameters: [] /stages/identification/{stage_uuid}/: get: operationId: stages_identification_read description: IdentificationStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/IdentificationStage' tags: - stages put: operationId: stages_identification_update description: IdentificationStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/IdentificationStage' responses: '200': description: '' schema: $ref: '#/definitions/IdentificationStage' tags: - stages patch: operationId: stages_identification_partial_update description: IdentificationStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/IdentificationStage' responses: '200': description: '' schema: $ref: '#/definitions/IdentificationStage' tags: - stages delete: operationId: stages_identification_delete description: IdentificationStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this Identification Stage. required: true type: string format: uuid /stages/invitation/invitations/: get: operationId: stages_invitation_invitations_list description: Invitation Viewset parameters: - name: created_by__username in: query description: '' required: false type: string - name: expires in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Invitation' tags: - stages post: operationId: stages_invitation_invitations_create description: Invitation Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Invitation' responses: '201': description: '' schema: $ref: '#/definitions/Invitation' tags: - stages parameters: [] /stages/invitation/invitations/{invite_uuid}/: get: operationId: stages_invitation_invitations_read description: Invitation Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Invitation' tags: - stages put: operationId: stages_invitation_invitations_update description: Invitation Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Invitation' responses: '200': description: '' schema: $ref: '#/definitions/Invitation' tags: - stages patch: operationId: stages_invitation_invitations_partial_update description: Invitation Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Invitation' responses: '200': description: '' schema: $ref: '#/definitions/Invitation' tags: - stages delete: operationId: stages_invitation_invitations_delete description: Invitation Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: invite_uuid in: path description: A UUID string identifying this Invitation. required: true type: string format: uuid /stages/invitation/stages/: get: operationId: stages_invitation_stages_list description: InvitationStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/InvitationStage' tags: - stages post: operationId: stages_invitation_stages_create description: InvitationStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/InvitationStage' responses: '201': description: '' schema: $ref: '#/definitions/InvitationStage' tags: - stages parameters: [] /stages/invitation/stages/{stage_uuid}/: get: operationId: stages_invitation_stages_read description: InvitationStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/InvitationStage' tags: - stages put: operationId: stages_invitation_stages_update description: InvitationStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/InvitationStage' responses: '200': description: '' schema: $ref: '#/definitions/InvitationStage' tags: - stages patch: operationId: stages_invitation_stages_partial_update description: InvitationStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/InvitationStage' responses: '200': description: '' schema: $ref: '#/definitions/InvitationStage' tags: - stages delete: operationId: stages_invitation_stages_delete description: InvitationStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this Invitation Stage. required: true type: string format: uuid /stages/password/: get: operationId: stages_password_list description: PasswordStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/PasswordStage' tags: - stages post: operationId: stages_password_create description: PasswordStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PasswordStage' responses: '201': description: '' schema: $ref: '#/definitions/PasswordStage' tags: - stages parameters: [] /stages/password/{stage_uuid}/: get: operationId: stages_password_read description: PasswordStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/PasswordStage' tags: - stages put: operationId: stages_password_update description: PasswordStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PasswordStage' responses: '200': description: '' schema: $ref: '#/definitions/PasswordStage' tags: - stages patch: operationId: stages_password_partial_update description: PasswordStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PasswordStage' responses: '200': description: '' schema: $ref: '#/definitions/PasswordStage' tags: - stages delete: operationId: stages_password_delete description: PasswordStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this Password Stage. required: true type: string format: uuid /stages/prompt/prompts/: get: operationId: stages_prompt_prompts_list description: Prompt Viewset parameters: - name: field_key in: query description: '' required: false type: string - name: label in: query description: '' required: false type: string - name: type in: query description: '' required: false type: string - name: placeholder in: query description: '' required: false type: string - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/Prompt' tags: - stages post: operationId: stages_prompt_prompts_create description: Prompt Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Prompt' responses: '201': description: '' schema: $ref: '#/definitions/Prompt' tags: - stages parameters: [] /stages/prompt/prompts/{prompt_uuid}/: get: operationId: stages_prompt_prompts_read description: Prompt Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/Prompt' tags: - stages put: operationId: stages_prompt_prompts_update description: Prompt Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Prompt' responses: '200': description: '' schema: $ref: '#/definitions/Prompt' tags: - stages patch: operationId: stages_prompt_prompts_partial_update description: Prompt Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/Prompt' responses: '200': description: '' schema: $ref: '#/definitions/Prompt' tags: - stages delete: operationId: stages_prompt_prompts_delete description: Prompt Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: prompt_uuid in: path description: A UUID string identifying this Prompt. required: true type: string format: uuid /stages/prompt/stages/: get: operationId: stages_prompt_stages_list description: PromptStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/PromptStage' tags: - stages post: operationId: stages_prompt_stages_create description: PromptStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PromptStage' responses: '201': description: '' schema: $ref: '#/definitions/PromptStage' tags: - stages parameters: [] /stages/prompt/stages/{stage_uuid}/: get: operationId: stages_prompt_stages_read description: PromptStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/PromptStage' tags: - stages put: operationId: stages_prompt_stages_update description: PromptStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PromptStage' responses: '200': description: '' schema: $ref: '#/definitions/PromptStage' tags: - stages patch: operationId: stages_prompt_stages_partial_update description: PromptStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/PromptStage' responses: '200': description: '' schema: $ref: '#/definitions/PromptStage' tags: - stages delete: operationId: stages_prompt_stages_delete description: PromptStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this Prompt Stage. required: true type: string format: uuid /stages/user_delete/: get: operationId: stages_user_delete_list description: UserDeleteStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/UserDeleteStage' tags: - stages post: operationId: stages_user_delete_create description: UserDeleteStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/UserDeleteStage' responses: '201': description: '' schema: $ref: '#/definitions/UserDeleteStage' tags: - stages parameters: [] /stages/user_delete/{stage_uuid}/: get: operationId: stages_user_delete_read description: UserDeleteStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/UserDeleteStage' tags: - stages put: operationId: stages_user_delete_update description: UserDeleteStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/UserDeleteStage' responses: '200': description: '' schema: $ref: '#/definitions/UserDeleteStage' tags: - stages patch: operationId: stages_user_delete_partial_update description: UserDeleteStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/UserDeleteStage' responses: '200': description: '' schema: $ref: '#/definitions/UserDeleteStage' tags: - stages delete: operationId: stages_user_delete_delete description: UserDeleteStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this User Delete Stage. required: true type: string format: uuid /stages/user_login/: get: operationId: stages_user_login_list description: UserLoginStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/UserLoginStage' tags: - stages post: operationId: stages_user_login_create description: UserLoginStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/UserLoginStage' responses: '201': description: '' schema: $ref: '#/definitions/UserLoginStage' tags: - stages parameters: [] /stages/user_login/{stage_uuid}/: get: operationId: stages_user_login_read description: UserLoginStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/UserLoginStage' tags: - stages put: operationId: stages_user_login_update description: UserLoginStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/UserLoginStage' responses: '200': description: '' schema: $ref: '#/definitions/UserLoginStage' tags: - stages patch: operationId: stages_user_login_partial_update description: UserLoginStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/UserLoginStage' responses: '200': description: '' schema: $ref: '#/definitions/UserLoginStage' tags: - stages delete: operationId: stages_user_login_delete description: UserLoginStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this User Login Stage. required: true type: string format: uuid /stages/user_logout/: get: operationId: stages_user_logout_list description: UserLogoutStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/UserLogoutStage' tags: - stages post: operationId: stages_user_logout_create description: UserLogoutStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/UserLogoutStage' responses: '201': description: '' schema: $ref: '#/definitions/UserLogoutStage' tags: - stages parameters: [] /stages/user_logout/{stage_uuid}/: get: operationId: stages_user_logout_read description: UserLogoutStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/UserLogoutStage' tags: - stages put: operationId: stages_user_logout_update description: UserLogoutStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/UserLogoutStage' responses: '200': description: '' schema: $ref: '#/definitions/UserLogoutStage' tags: - stages patch: operationId: stages_user_logout_partial_update description: UserLogoutStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/UserLogoutStage' responses: '200': description: '' schema: $ref: '#/definitions/UserLogoutStage' tags: - stages delete: operationId: stages_user_logout_delete description: UserLogoutStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this User Logout Stage. required: true type: string format: uuid /stages/user_write/: get: operationId: stages_user_write_list description: UserWriteStage Viewset parameters: - name: ordering in: query description: Which field to use when ordering the results. required: false type: string - name: search in: query description: A search term. required: false type: string - name: page in: query description: A page number within the paginated result set. required: false type: integer - name: page_size in: query description: Number of results to return per page. required: false type: integer responses: '200': description: '' schema: required: - count - results type: object properties: count: type: integer next: type: string format: uri x-nullable: true previous: type: string format: uri x-nullable: true results: type: array items: $ref: '#/definitions/UserWriteStage' tags: - stages post: operationId: stages_user_write_create description: UserWriteStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/UserWriteStage' responses: '201': description: '' schema: $ref: '#/definitions/UserWriteStage' tags: - stages parameters: [] /stages/user_write/{stage_uuid}/: get: operationId: stages_user_write_read description: UserWriteStage Viewset parameters: [] responses: '200': description: '' schema: $ref: '#/definitions/UserWriteStage' tags: - stages put: operationId: stages_user_write_update description: UserWriteStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/UserWriteStage' responses: '200': description: '' schema: $ref: '#/definitions/UserWriteStage' tags: - stages patch: operationId: stages_user_write_partial_update description: UserWriteStage Viewset parameters: - name: data in: body required: true schema: $ref: '#/definitions/UserWriteStage' responses: '200': description: '' schema: $ref: '#/definitions/UserWriteStage' tags: - stages delete: operationId: stages_user_write_delete description: UserWriteStage Viewset parameters: [] responses: '204': description: '' tags: - stages parameters: - name: stage_uuid in: path description: A UUID string identifying this User Write Stage. required: true type: string format: uuid definitions: AdministrationMetrics: description: Login Metrics per 1h type: object properties: logins_per_1h: title: Logins per 1h type: string readOnly: true logins_failed_per_1h: title: Logins failed per 1h type: string readOnly: true Task: description: Serialize TaskInfo and TaskResult required: - task_name - task_description - task_finish_timestamp - status - messages type: object properties: task_name: title: Task name type: string minLength: 1 task_description: title: Task description type: string minLength: 1 task_finish_timestamp: title: Task finish timestamp type: string format: date-time status: title: Status type: integer messages: description: '' type: array items: type: string Version: description: Get running and latest version. type: object properties: version_current: title: Version current type: string readOnly: true version_latest: title: Version latest type: string readOnly: true outdated: title: Outdated type: boolean readOnly: true Provider: title: Provider description: Provider Serializer required: - name - application - authorization_flow type: object properties: pk: title: ID type: integer readOnly: true name: title: Name type: string minLength: 1 application: title: Application type: string authorization_flow: title: Authorization flow description: Flow used when authorizing this provider. type: string format: uuid property_mappings: type: array items: type: string format: uuid uniqueItems: true object_type: title: Object type type: string readOnly: true assigned_application_slug: title: Assigned application slug type: string readOnly: true assigned_application_name: title: Assigned application name type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true Application: description: Application Serializer required: - name - slug type: object properties: pk: title: Pbm uuid type: string format: uuid readOnly: true name: title: Name description: Application's display Name. type: string minLength: 1 slug: title: Slug description: Internal application name, used in URLs. type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ maxLength: 50 minLength: 1 provider: $ref: '#/definitions/Provider' launch_url: title: Launch url type: string readOnly: true meta_launch_url: title: Meta launch url type: string format: uri maxLength: 200 meta_icon: title: Meta icon type: string readOnly: true format: uri meta_description: title: Meta description type: string meta_publisher: title: Meta publisher type: string policies: type: array items: type: string format: uuid readOnly: true uniqueItems: true Group: description: Group Serializer required: - name - parent - users type: object properties: pk: title: Group uuid type: string format: uuid readOnly: true name: title: Name type: string maxLength: 80 minLength: 1 is_superuser: title: Is superuser description: Users added to this group will be superusers. type: boolean parent: title: Parent type: string format: uuid users: type: array items: type: integer uniqueItems: true attributes: title: Attributes type: object User: title: User description: User Serializer required: - username - name type: object properties: pk: title: ID type: integer readOnly: true username: title: Username description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. type: string pattern: ^[\w.@+-]+$ maxLength: 150 minLength: 1 name: title: Name description: User's display name. type: string minLength: 1 is_active: title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. type: boolean last_login: title: Last login type: string format: date-time x-nullable: true is_superuser: title: Is superuser type: boolean readOnly: true email: title: Email address type: string format: email maxLength: 254 avatar: title: Avatar type: string readOnly: true minLength: 1 attributes: title: Attributes type: object Token: description: Token Serializer required: - identifier - user type: object properties: pk: title: Token uuid type: string format: uuid readOnly: true identifier: title: Identifier type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ maxLength: 255 minLength: 1 intent: title: Intent type: string enum: - verification - api - recovery user: $ref: '#/definitions/User' description: title: Description type: string expires: title: Expires type: string format: date-time expiring: title: Expiring type: boolean TokenView: description: Show token's current key type: object properties: key: title: Key type: string readOnly: true minLength: 1 CertificateKeyPair: description: CertificateKeyPair Serializer required: - name - certificate_data type: object properties: pk: title: Kp uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 fingerprint: title: Fingerprint type: string readOnly: true certificate_data: title: Certificate data description: PEM-encoded Certificate data type: string minLength: 1 key_data: title: Key data description: Optional Private Key. If this is set, you can use this keypair for encryption. type: string cert_expiry: title: Cert expiry type: string format: date-time readOnly: true cert_subject: title: Cert subject type: string readOnly: true private_key_available: title: Private key available type: boolean readOnly: true CertificateData: description: Get CertificateKeyPair's data type: object properties: data: title: Data type: string readOnly: true minLength: 1 Event: description: Event Serializer required: - action - app type: object properties: pk: title: Event uuid type: string format: uuid readOnly: true user: title: User type: object action: title: Action type: string enum: - login - login_failed - logout - user_write - suspicious_request - password_set - secret_view - invitation_used - authorize_application - source_linked - impersonation_started - impersonation_ended - policy_execution - policy_exception - property_mapping_exception - system_task_execution - system_task_exception - configuration_error - model_created - model_updated - model_deleted - update_available - custom_ app: title: App type: string minLength: 1 context: title: Context type: object client_ip: title: Client ip type: string minLength: 1 x-nullable: true created: title: Created type: string format: date-time readOnly: true EventTopPerUserSerialier: description: Response object of Event's top_per_user required: - application - counted_events - unique_users type: object properties: application: title: Application type: object additionalProperties: type: string counted_events: title: Counted events type: integer unique_users: title: Unique users type: integer Notification: description: Notification Serializer required: - event type: object properties: pk: title: Uuid type: string format: uuid readOnly: true severity: title: Severity type: string readOnly: true body: title: Body type: string readOnly: true created: title: Created type: string format: date-time readOnly: true event: $ref: '#/definitions/Event' seen: title: Seen type: boolean NotificationRule: description: NotificationRule Serializer required: - name type: object properties: pk: title: Pbm uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 transports: description: '' type: array items: description: Action which is executed when a Rule matches required: - name - mode type: object properties: uuid: title: Uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 mode: title: Mode type: string enum: - webhook - webhook_slack - email webhook_url: title: Webhook url type: string send_once: title: Send once description: Only send notification once, for example when sending a webhook into a chat channel. type: boolean readOnly: true severity: title: Severity description: Controls which severity level the created notifications will have. type: string enum: - notice - warning - alert group: description: Custom Group model which supports a basic hierarchy required: - name type: object properties: group_uuid: title: Group uuid type: string format: uuid readOnly: true name: title: Name type: string maxLength: 80 minLength: 1 is_superuser: title: Is superuser description: Users added to this group will be superusers. type: boolean attributes: title: Attributes type: object parent: description: Custom Group model which supports a basic hierarchy required: - name - parent type: object properties: group_uuid: title: Group uuid type: string format: uuid readOnly: true name: title: Name type: string maxLength: 80 minLength: 1 is_superuser: title: Is superuser description: Users added to this group will be superusers. type: boolean attributes: title: Attributes type: object parent: title: Parent type: string format: uuid readOnly: true readOnly: true NotificationTransport: description: NotificationTransport Serializer required: - name - mode type: object properties: pk: title: Uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 mode: title: Mode type: string enum: - webhook - webhook_slack - email mode_verbose: title: Mode verbose type: string readOnly: true webhook_url: title: Webhook url type: string Flow: description: Flow Serializer required: - name - slug - title - designation type: object properties: pk: title: Flow uuid type: string format: uuid readOnly: true policybindingmodel_ptr_id: title: Policybindingmodel ptr id type: string readOnly: true name: title: Name type: string minLength: 1 slug: title: Slug description: Visible in the URL. type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ maxLength: 50 minLength: 1 title: title: Title description: Shown as the Title in Flow pages. type: string minLength: 1 designation: title: Designation description: Decides what this Flow is used for. For example, the Authentication flow is redirect to when an un-authenticated user visits authentik. type: string enum: - authentication - authorization - invalidation - enrollment - unenrollment - recovery - stage_configuration background: title: Background description: Background shown during execution type: string readOnly: true format: uri stages: type: array items: type: string format: uuid readOnly: true uniqueItems: true policies: type: array items: type: string format: uuid readOnly: true uniqueItems: true cache_count: title: Cache count type: string readOnly: true Stage: title: Stage obj description: Stage Serializer required: - name type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' FlowStageBinding: description: FlowStageBinding Serializer required: - target - stage - order type: object properties: pk: title: Fsb uuid type: string format: uuid readOnly: true policybindingmodel_ptr_id: title: Policybindingmodel ptr id type: string readOnly: true target: title: Target type: string format: uuid stage: title: Stage type: string format: uuid stage_obj: $ref: '#/definitions/Stage' evaluate_on_plan: title: Evaluate on plan description: Evaluate policies during the Flow planning process. Disable this for input-based policies. type: boolean re_evaluate_policies: title: Re evaluate policies description: Evaluate policies when the Stage is present to the user. type: boolean order: title: Order type: integer maximum: 2147483647 minimum: -2147483648 policies: type: array items: type: string format: uuid readOnly: true uniqueItems: true Cache: description: Generic cache stats for an object type: object properties: count: title: Count type: integer readOnly: true FlowDiagram: description: response of the flow's /diagram/ action type: object properties: diagram: title: Diagram type: string readOnly: true minLength: 1 Outpost: description: Outpost Serializer required: - name - providers - _config type: object properties: pk: title: Uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 providers: type: array items: type: integer uniqueItems: true providers_obj: description: '' type: array items: $ref: '#/definitions/Provider' readOnly: true service_connection: title: Service connection description: Select Service-Connection authentik should use to manage this outpost. Leave empty if authentik should not handle the deployment. type: string format: uuid x-nullable: true token_identifier: title: Token identifier type: string readOnly: true _config: title: config type: object OutpostHealth: description: Outpost health status type: object properties: last_seen: title: Last seen type: string format: date-time readOnly: true version: title: Version type: string readOnly: true minLength: 1 version_should: title: Version should type: string readOnly: true minLength: 1 version_outdated: title: Version outdated type: boolean readOnly: true OpenIDConnectConfiguration: title: Oidc configuration description: rest_framework Serializer for OIDC Configuration required: - issuer - authorization_endpoint - token_endpoint - userinfo_endpoint - end_session_endpoint - introspection_endpoint - jwks_uri - response_types_supported - id_token_signing_alg_values_supported - subject_types_supported - token_endpoint_auth_methods_supported type: object properties: issuer: title: Issuer type: string minLength: 1 authorization_endpoint: title: Authorization endpoint type: string minLength: 1 token_endpoint: title: Token endpoint type: string minLength: 1 userinfo_endpoint: title: Userinfo endpoint type: string minLength: 1 end_session_endpoint: title: End session endpoint type: string minLength: 1 introspection_endpoint: title: Introspection endpoint type: string minLength: 1 jwks_uri: title: Jwks uri type: string minLength: 1 response_types_supported: description: '' type: array items: type: string minLength: 1 id_token_signing_alg_values_supported: description: '' type: array items: type: string minLength: 1 subject_types_supported: description: '' type: array items: type: string minLength: 1 token_endpoint_auth_methods_supported: description: '' type: array items: type: string minLength: 1 ProxyOutpostConfig: description: ProxyProvider Serializer required: - name - internal_host - external_host type: object properties: pk: title: ID type: integer readOnly: true name: title: Name type: string minLength: 1 internal_host: title: Internal host type: string minLength: 1 external_host: title: External host type: string minLength: 1 internal_host_ssl_validation: title: Internal host SSL Validation description: Validate SSL Certificates of upstream servers type: boolean client_id: title: Client ID type: string maxLength: 255 minLength: 1 client_secret: title: Client Secret type: string maxLength: 255 oidc_configuration: $ref: '#/definitions/OpenIDConnectConfiguration' cookie_secret: title: Cookie secret type: string minLength: 1 certificate: title: Certificate type: string format: uuid x-nullable: true skip_path_regex: title: Skip path regex description: Regular expressions for which authentication is not required. Each new line is interpreted as a new Regular Expression. type: string basic_auth_enabled: title: Set HTTP-Basic Authentication description: Set a custom HTTP-Basic Authentication header based on values from authentik. type: boolean basic_auth_password_attribute: title: HTTP-Basic Password Key description: User/Group Attribute used for the password part of the HTTP-Basic Header. type: string basic_auth_user_attribute: title: HTTP-Basic Username Key description: User/Group Attribute used for the user part of the HTTP-Basic Header. If not set, the user's Email address is used. type: string ServiceConnection: description: ServiceConnection Serializer required: - name type: object properties: pk: title: Uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 local: title: Local description: If enabled, use the local connection. Required Docker socket/Kubernetes Integration type: boolean object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true TypeCreate: description: Types of an object that can be created type: object properties: name: title: Name type: string readOnly: true minLength: 1 description: title: Description type: string readOnly: true minLength: 1 link: title: Link type: string readOnly: true minLength: 1 ServiceConnectionState: description: Serializer for Service connection state type: object properties: healthy: title: Healthy type: boolean readOnly: true version: title: Version type: string readOnly: true minLength: 1 DockerServiceConnection: description: DockerServiceConnection Serializer required: - name - url type: object properties: pk: title: Uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 local: title: Local description: If enabled, use the local connection. Required Docker socket/Kubernetes Integration type: boolean object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true url: title: Url description: Can be in the format of 'unix://' when connecting to a local docker daemon, or 'https://:2376' when connecting to a remote system. type: string minLength: 1 tls_verification: title: Tls verification description: CA which the endpoint's Certificate is verified against. Can be left empty for no validation. type: string format: uuid x-nullable: true tls_authentication: title: Tls authentication description: Certificate/Key used for authentication. Can be left empty for no authentication. type: string format: uuid x-nullable: true KubernetesServiceConnection: description: KubernetesServiceConnection Serializer required: - name type: object properties: pk: title: Uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 local: title: Local description: If enabled, use the local connection. Required Docker socket/Kubernetes Integration type: boolean object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true kubeconfig: title: Kubeconfig description: Paste your kubeconfig here. authentik will automatically use the currently selected context. type: object Policy: description: Policy Serializer type: object properties: pk: title: Policy uuid type: string format: uuid readOnly: true name: title: Name type: string x-nullable: true execution_logging: title: Execution logging description: When this option is enabled, all executions of this policy will be logged. By default, only execution errors are logged. type: boolean object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true bound_to: title: Bound to type: integer readOnly: true PolicyBinding: description: PolicyBinding Serializer required: - target - order type: object properties: pk: title: Policy binding uuid type: string format: uuid readOnly: true policy: description: Policies which specify if a user is authorized to use an Application. Can be overridden by other types to add other fields, more logic, etc. type: object properties: policy_uuid: title: Policy uuid type: string format: uuid readOnly: true created: title: Created type: string format: date-time readOnly: true last_updated: title: Last updated type: string format: date-time readOnly: true name: title: Name type: string x-nullable: true execution_logging: title: Execution logging description: When this option is enabled, all executions of this policy will be logged. By default, only execution errors are logged. type: boolean readOnly: true group: description: Custom Group model which supports a basic hierarchy required: - name type: object properties: group_uuid: title: Group uuid type: string format: uuid readOnly: true name: title: Name type: string maxLength: 80 minLength: 1 is_superuser: title: Is superuser description: Users added to this group will be superusers. type: boolean attributes: title: Attributes type: object parent: description: Custom Group model which supports a basic hierarchy required: - name - parent type: object properties: group_uuid: title: Group uuid type: string format: uuid readOnly: true name: title: Name type: string maxLength: 80 minLength: 1 is_superuser: title: Is superuser description: Users added to this group will be superusers. type: boolean attributes: title: Attributes type: object parent: title: Parent type: string format: uuid readOnly: true readOnly: true user: description: Custom User model to allow easier adding o f user-based settings required: - password - username - name type: object properties: id: title: ID type: integer readOnly: true password: title: Password type: string maxLength: 128 minLength: 1 last_login: title: Last login type: string format: date-time x-nullable: true username: title: Username description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. type: string pattern: ^[\w.@+-]+$ maxLength: 150 minLength: 1 first_name: title: First name type: string maxLength: 150 last_name: title: Last name type: string maxLength: 150 email: title: Email address type: string format: email maxLength: 254 is_active: title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. type: boolean date_joined: title: Date joined type: string format: date-time uuid: title: Uuid type: string format: uuid readOnly: true name: title: Name description: User's display name. type: string minLength: 1 password_change_date: title: Password change date type: string format: date-time readOnly: true attributes: title: Attributes type: object groups: description: '' type: array items: description: Groups are a generic way of categorizing users to apply permissions, or some other label, to those users. A user can belong to any number of groups. A user in a group automatically has all the permissions granted to that group. For example, if the group 'Site editors' has the permission can_edit_home_page, any user in that group will have that permission. Beyond permissions, groups are a convenient way to categorize users to apply some label, or extended functionality, to them. For example, you could create a group 'Special users', and you could write code that would do special things to those users -- such as giving them access to a members-only portion of your site, or sending them members-only email messages. required: - name type: object properties: id: title: ID type: integer readOnly: true name: title: Name type: string maxLength: 150 minLength: 1 permissions: type: array items: type: integer uniqueItems: true readOnly: true user_permissions: description: '' type: array items: description: "The permissions system provides a way to assign permissions\ \ to specific users and groups of users. The permission system is\ \ used by the Django admin site, but may also be useful in your own\ \ code. The Django admin site uses permissions as follows: - The \"\ add\" permission limits the user's ability to view the \"add\" form\ \ and add an object. - The \"change\" permission limits a user's ability\ \ to view the change list, view the \"change\" form and change an\ \ object. - The \"delete\" permission limits the ability to delete\ \ an object. - The \"view\" permission limits the ability to view\ \ an object. Permissions are set globally per type of object, not\ \ per specific object instance. It is possible to say \"Mary may change\ \ news stories,\" but it's not currently possible to say \"Mary may\ \ change news stories, but only the ones she created herself\" or\ \ \"Mary may only change news stories that have a certain status or\ \ publication date.\" The permissions listed above are automatically\ \ created for each model." required: - name - codename - content_type type: object properties: id: title: ID type: integer readOnly: true name: title: Name type: string maxLength: 255 minLength: 1 codename: title: Codename type: string maxLength: 100 minLength: 1 content_type: title: Content type type: integer readOnly: true sources: description: '' type: array items: description: Base Authentication source, i.e. an OAuth Provider, SAML Remote or LDAP Server required: - name - slug type: object properties: pbm_uuid: title: Pbm uuid type: string format: uuid readOnly: true name: title: Name description: Source's display Name. type: string minLength: 1 slug: title: Slug description: Internal source name, used in URLs. type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ maxLength: 50 minLength: 1 enabled: title: Enabled type: boolean authentication_flow: title: Authentication flow description: Flow to use when authenticating existing users. type: string format: uuid x-nullable: true enrollment_flow: title: Enrollment flow description: Flow to use when enrolling new users. type: string format: uuid x-nullable: true policies: type: array items: type: string format: uuid readOnly: true uniqueItems: true property_mappings: type: array items: type: string format: uuid uniqueItems: true readOnly: true ak_groups: description: '' type: array items: description: Custom Group model which supports a basic hierarchy required: - name - parent type: object properties: group_uuid: title: Group uuid type: string format: uuid readOnly: true name: title: Name type: string maxLength: 80 minLength: 1 is_superuser: title: Is superuser description: Users added to this group will be superusers. type: boolean attributes: title: Attributes type: object parent: title: Parent type: string format: uuid readOnly: true readOnly: true target: title: Target type: string format: uuid enabled: title: Enabled type: boolean order: title: Order type: integer maximum: 2147483647 minimum: -2147483648 timeout: title: Timeout description: Timeout after which Policy execution is terminated. type: integer maximum: 2147483647 minimum: -2147483648 DummyPolicy: description: Dummy Policy Serializer type: object properties: pk: title: Policy uuid type: string format: uuid readOnly: true name: title: Name type: string x-nullable: true execution_logging: title: Execution logging description: When this option is enabled, all executions of this policy will be logged. By default, only execution errors are logged. type: boolean object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true bound_to: title: Bound to type: integer readOnly: true result: title: Result type: boolean wait_min: title: Wait min type: integer maximum: 2147483647 minimum: -2147483648 wait_max: title: Wait max type: integer maximum: 2147483647 minimum: -2147483648 EventMatcherPolicy: description: Event Matcher Policy Serializer type: object properties: pk: title: Policy uuid type: string format: uuid readOnly: true name: title: Name type: string x-nullable: true execution_logging: title: Execution logging description: When this option is enabled, all executions of this policy will be logged. By default, only execution errors are logged. type: boolean object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true bound_to: title: Bound to type: integer readOnly: true action: title: Action description: Match created events with this action type. When left empty, all action types will be matched. type: string enum: - login - login_failed - logout - user_write - suspicious_request - password_set - secret_view - invitation_used - authorize_application - source_linked - impersonation_started - impersonation_ended - policy_execution - policy_exception - property_mapping_exception - system_task_execution - system_task_exception - configuration_error - model_created - model_updated - model_deleted - update_available - custom_ client_ip: title: Client ip description: Matches Event's Client IP (strict matching, for network matching use an Expression Policy) type: string app: title: App description: Match events created by selected application. When left empty, all applications are matched. type: string enum: - authentik.admin - authentik.api - authentik.events - authentik.crypto - authentik.flows - authentik.outposts - authentik.lib - authentik.policies - authentik.policies.dummy - authentik.policies.event_matcher - authentik.policies.expiry - authentik.policies.expression - authentik.policies.group_membership - authentik.policies.hibp - authentik.policies.password - authentik.policies.reputation - authentik.providers.proxy - authentik.providers.oauth2 - authentik.providers.saml - authentik.recovery - authentik.sources.ldap - authentik.sources.oauth - authentik.sources.saml - authentik.stages.authenticator_static - authentik.stages.authenticator_totp - authentik.stages.authenticator_validate - authentik.stages.authenticator_webauthn - authentik.stages.captcha - authentik.stages.consent - authentik.stages.dummy - authentik.stages.email - authentik.stages.identification - authentik.stages.invitation - authentik.stages.password - authentik.stages.prompt - authentik.stages.user_delete - authentik.stages.user_login - authentik.stages.user_logout - authentik.stages.user_write - authentik.managed - authentik.core ExpressionPolicy: description: Group Membership Policy Serializer required: - expression type: object properties: pk: title: Policy uuid type: string format: uuid readOnly: true name: title: Name type: string x-nullable: true execution_logging: title: Execution logging description: When this option is enabled, all executions of this policy will be logged. By default, only execution errors are logged. type: boolean object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true bound_to: title: Bound to type: integer readOnly: true expression: title: Expression type: string minLength: 1 GroupMembershipPolicy: description: Group Membership Policy Serializer type: object properties: pk: title: Policy uuid type: string format: uuid readOnly: true name: title: Name type: string x-nullable: true execution_logging: title: Execution logging description: When this option is enabled, all executions of this policy will be logged. By default, only execution errors are logged. type: boolean object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true bound_to: title: Bound to type: integer readOnly: true group: title: Group type: string format: uuid x-nullable: true HaveIBeenPwendPolicy: description: Have I Been Pwned Policy Serializer type: object properties: pk: title: Policy uuid type: string format: uuid readOnly: true name: title: Name type: string x-nullable: true execution_logging: title: Execution logging description: When this option is enabled, all executions of this policy will be logged. By default, only execution errors are logged. type: boolean object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true bound_to: title: Bound to type: integer readOnly: true password_field: title: Password field description: Field key to check, field keys defined in Prompt stages are available. type: string minLength: 1 allowed_count: title: Allowed count type: integer maximum: 2147483647 minimum: -2147483648 PasswordPolicy: description: Password Policy Serializer required: - error_message type: object properties: pk: title: Policy uuid type: string format: uuid readOnly: true name: title: Name type: string x-nullable: true execution_logging: title: Execution logging description: When this option is enabled, all executions of this policy will be logged. By default, only execution errors are logged. type: boolean object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true bound_to: title: Bound to type: integer readOnly: true password_field: title: Password field description: Field key to check, field keys defined in Prompt stages are available. type: string minLength: 1 amount_uppercase: title: Amount uppercase type: integer maximum: 2147483647 minimum: -2147483648 amount_lowercase: title: Amount lowercase type: integer maximum: 2147483647 minimum: -2147483648 amount_symbols: title: Amount symbols type: integer maximum: 2147483647 minimum: -2147483648 length_min: title: Length min type: integer maximum: 2147483647 minimum: -2147483648 symbol_charset: title: Symbol charset type: string minLength: 1 error_message: title: Error message type: string minLength: 1 PasswordExpiryPolicy: description: Password Expiry Policy Serializer required: - days type: object properties: pk: title: Policy uuid type: string format: uuid readOnly: true name: title: Name type: string x-nullable: true execution_logging: title: Execution logging description: When this option is enabled, all executions of this policy will be logged. By default, only execution errors are logged. type: boolean object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true bound_to: title: Bound to type: integer readOnly: true days: title: Days type: integer maximum: 2147483647 minimum: -2147483648 deny_only: title: Deny only type: boolean ReputationPolicy: description: Reputation Policy Serializer type: object properties: pk: title: Policy uuid type: string format: uuid readOnly: true name: title: Name type: string x-nullable: true execution_logging: title: Execution logging description: When this option is enabled, all executions of this policy will be logged. By default, only execution errors are logged. type: boolean object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true bound_to: title: Bound to type: integer readOnly: true check_ip: title: Check ip type: boolean check_username: title: Check username type: boolean threshold: title: Threshold type: integer maximum: 2147483647 minimum: -2147483648 PropertyMapping: description: PropertyMapping Serializer required: - name - expression type: object properties: pk: title: Pm uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 expression: title: Expression type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true LDAPPropertyMapping: description: LDAP PropertyMapping Serializer required: - name - expression - object_field type: object properties: pk: title: Pm uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 expression: title: Expression type: string minLength: 1 object_field: title: Object field type: string minLength: 1 verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true SAMLPropertyMapping: description: SAMLPropertyMapping Serializer required: - name - saml_name - expression type: object properties: pk: title: Pm uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 saml_name: title: SAML Name type: string minLength: 1 friendly_name: title: Friendly name type: string x-nullable: true expression: title: Expression type: string minLength: 1 verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true ScopeMapping: description: ScopeMapping Serializer required: - name - scope_name - expression type: object properties: pk: title: Pm uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 scope_name: title: Scope name description: Scope used by the client type: string minLength: 1 description: title: Description description: Description shown to the user when consenting. If left empty, the user won't be informed. type: string expression: title: Expression type: string minLength: 1 verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true OAuth2Provider: description: OAuth2Provider Serializer required: - name - application - authorization_flow type: object properties: pk: title: ID type: integer readOnly: true name: title: Name type: string minLength: 1 application: title: Application type: string authorization_flow: title: Authorization flow description: Flow used when authorizing this provider. type: string format: uuid property_mappings: type: array items: type: string format: uuid uniqueItems: true object_type: title: Object type type: string readOnly: true assigned_application_slug: title: Assigned application slug type: string readOnly: true assigned_application_name: title: Assigned application name type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true client_type: title: Client Type description: |- Confidential clients are capable of maintaining the confidentiality of their credentials. Public clients are incapable. type: string enum: - confidential - public client_id: title: Client ID type: string maxLength: 255 minLength: 1 client_secret: title: Client Secret type: string maxLength: 255 token_validity: title: Token validity description: 'Tokens not valid on or after current time + this value (Format: hours=1;minutes=2;seconds=3).' type: string minLength: 1 include_claims_in_id_token: title: Include claims in id_token description: Include User claims from scopes in the id_token, for applications that don't access the userinfo endpoint. type: boolean jwt_alg: title: JWT Algorithm description: Algorithm used to sign the JWT Token type: string enum: - HS256 - RS256 rsa_key: title: RSA Key description: Key used to sign the tokens. Only required when JWT Algorithm is set to RS256. type: string format: uuid x-nullable: true redirect_uris: title: Redirect URIs description: Enter each URI on a new line. type: string minLength: 1 sub_mode: title: Sub mode description: Configure what data should be used as unique User Identifier. For most cases, the default should be fine. type: string enum: - hashed_user_id - user_username - user_email - user_upn issuer_mode: title: Issuer mode description: Configure how the issuer field of the ID Token should be filled. type: string enum: - global - per_provider OAuth2ProviderSetupURLs: description: OAuth2 Provider Metadata serializer type: object properties: issuer: title: Issuer type: string readOnly: true authorize: title: Authorize type: string readOnly: true token: title: Token type: string readOnly: true user_info: title: User info type: string readOnly: true provider_info: title: Provider info type: string readOnly: true ProxyProvider: description: ProxyProvider Serializer required: - name - application - authorization_flow - internal_host - external_host type: object properties: pk: title: ID type: integer readOnly: true name: title: Name type: string minLength: 1 application: title: Application type: string authorization_flow: title: Authorization flow description: Flow used when authorizing this provider. type: string format: uuid property_mappings: type: array items: type: string format: uuid uniqueItems: true object_type: title: Object type type: string readOnly: true assigned_application_slug: title: Assigned application slug type: string readOnly: true assigned_application_name: title: Assigned application name type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true internal_host: title: Internal host type: string minLength: 1 external_host: title: External host type: string minLength: 1 internal_host_ssl_validation: title: Internal host SSL Validation description: Validate SSL Certificates of upstream servers type: boolean certificate: title: Certificate type: string format: uuid x-nullable: true skip_path_regex: title: Skip path regex description: Regular expressions for which authentication is not required. Each new line is interpreted as a new Regular Expression. type: string basic_auth_enabled: title: Set HTTP-Basic Authentication description: Set a custom HTTP-Basic Authentication header based on values from authentik. type: boolean basic_auth_password_attribute: title: HTTP-Basic Password Key description: User/Group Attribute used for the password part of the HTTP-Basic Header. type: string basic_auth_user_attribute: title: HTTP-Basic Username Key description: User/Group Attribute used for the user part of the HTTP-Basic Header. If not set, the user's Email address is used. type: string SAMLProvider: description: SAMLProvider Serializer required: - name - application - authorization_flow - acs_url type: object properties: pk: title: ID type: integer readOnly: true name: title: Name type: string minLength: 1 application: title: Application type: string authorization_flow: title: Authorization flow description: Flow used when authorizing this provider. type: string format: uuid property_mappings: type: array items: type: string format: uuid uniqueItems: true object_type: title: Object type type: string readOnly: true assigned_application_slug: title: Assigned application slug type: string readOnly: true assigned_application_name: title: Assigned application name type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true acs_url: title: ACS URL type: string format: uri maxLength: 200 minLength: 1 audience: title: Audience description: Value of the audience restriction field of the asseration. When left empty, no audience restriction will be added. type: string issuer: title: Issuer description: Also known as EntityID type: string minLength: 1 assertion_valid_not_before: title: Assertion valid not before description: 'Assertion valid not before current time + this value (Format: hours=-1;minutes=-2;seconds=-3).' type: string minLength: 1 assertion_valid_not_on_or_after: title: Assertion valid not on or after description: 'Assertion not valid on or after current time + this value (Format: hours=1;minutes=2;seconds=3).' type: string minLength: 1 session_valid_not_on_or_after: title: Session valid not on or after description: 'Session not valid on or after current time + this value (Format: hours=1;minutes=2;seconds=3).' type: string minLength: 1 name_id_mapping: title: NameID Property Mapping description: Configure how the NameID value will be created. When left empty, the NameIDPolicy of the incoming request will be considered type: string x-nullable: true digest_algorithm: title: Digest algorithm type: string enum: - http://www.w3.org/2000/09/xmldsig#sha1 - http://www.w3.org/2001/04/xmlenc#sha256 - http://www.w3.org/2001/04/xmldsig-more#sha384 - http://www.w3.org/2001/04/xmlenc#sha512 signature_algorithm: title: Signature algorithm type: string enum: - http://www.w3.org/2000/09/xmldsig#rsa-sha1 - http://www.w3.org/2001/04/xmldsig-more#rsa-sha256 - http://www.w3.org/2001/04/xmldsig-more#rsa-sha384 - http://www.w3.org/2001/04/xmldsig-more#rsa-sha512 - http://www.w3.org/2000/09/xmldsig#dsa-sha1 signing_kp: title: Signing Keypair description: Keypair used to sign outgoing Responses going to the Service Provider. type: string format: uuid x-nullable: true verification_kp: title: Verification Certificate description: When selected, incoming assertion's Signatures will be validated against this certificate. To allow unsigned Requests, leave on default. type: string format: uuid x-nullable: true SAMLMetadata: description: SAML Provider Metadata serializer type: object properties: metadata: title: Metadata type: string readOnly: true Config: description: Serialize authentik Config into DRF Object type: object properties: branding_logo: title: Branding logo type: string readOnly: true branding_title: title: Branding title type: string readOnly: true error_reporting_enabled: title: Error reporting enabled type: string readOnly: true error_reporting_environment: title: Error reporting environment type: string readOnly: true error_reporting_send_pii: title: Error reporting send pii type: string readOnly: true Message: description: Serialize Django Message into DRF Object type: object properties: message: title: Message type: string readOnly: true level: title: Level type: string readOnly: true tags: title: Tags type: string readOnly: true extra_tags: title: Extra tags type: string readOnly: true level_tag: title: Level tag type: string readOnly: true Source: description: Source Serializer required: - name - slug type: object properties: pk: title: Pbm uuid type: string format: uuid readOnly: true name: title: Name description: Source's display Name. type: string minLength: 1 slug: title: Slug description: Internal source name, used in URLs. type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ maxLength: 50 minLength: 1 enabled: title: Enabled type: boolean authentication_flow: title: Authentication flow description: Flow to use when authenticating existing users. type: string format: uuid x-nullable: true enrollment_flow: title: Enrollment flow description: Flow to use when enrolling new users. type: string format: uuid x-nullable: true object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true LDAPSource: description: LDAP Source Serializer required: - name - slug - server_uri - bind_cn - bind_password - base_dn type: object properties: pk: title: Pbm uuid type: string format: uuid readOnly: true name: title: Name description: Source's display Name. type: string minLength: 1 slug: title: Slug description: Internal source name, used in URLs. type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ maxLength: 50 minLength: 1 enabled: title: Enabled type: boolean authentication_flow: title: Authentication flow description: Flow to use when authenticating existing users. type: string format: uuid x-nullable: true enrollment_flow: title: Enrollment flow description: Flow to use when enrolling new users. type: string format: uuid x-nullable: true object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true server_uri: title: Server URI type: string minLength: 1 bind_cn: title: Bind CN type: string minLength: 1 bind_password: title: Bind password type: string minLength: 1 start_tls: title: Enable Start TLS type: boolean base_dn: title: Base DN type: string minLength: 1 additional_user_dn: title: Addition User DN description: Prepended to Base DN for User-queries. type: string additional_group_dn: title: Addition Group DN description: Prepended to Base DN for Group-queries. type: string user_object_filter: title: User object filter description: Consider Objects matching this filter to be Users. type: string minLength: 1 group_object_filter: title: Group object filter description: Consider Objects matching this filter to be Groups. type: string minLength: 1 group_membership_field: title: Group membership field description: Field which contains members of a group. type: string minLength: 1 object_uniqueness_field: title: Object uniqueness field description: Field which contains a unique Identifier. type: string minLength: 1 sync_users: title: Sync users type: boolean sync_users_password: title: Sync users password description: When a user changes their password, sync it back to LDAP. This can only be enabled on a single LDAP source. type: boolean sync_groups: title: Sync groups type: boolean sync_parent_group: title: Sync parent group type: string format: uuid x-nullable: true property_mappings: type: array items: type: string format: uuid uniqueItems: true property_mappings_group: description: Property mappings used for group creation/updating. type: array items: description: Property mappings used for group creation/updating. type: string format: uuid uniqueItems: true LDAPSourceSyncStatus: description: LDAP Sync status type: object properties: last_sync: title: Last sync type: string format: date-time readOnly: true OAuthSource: description: OAuth Source Serializer required: - name - slug - provider_type - authorization_url - access_token_url - profile_url - consumer_key - consumer_secret type: object properties: pk: title: Pbm uuid type: string format: uuid readOnly: true name: title: Name description: Source's display Name. type: string minLength: 1 slug: title: Slug description: Internal source name, used in URLs. type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ maxLength: 50 minLength: 1 enabled: title: Enabled type: boolean authentication_flow: title: Authentication flow description: Flow to use when authenticating existing users. type: string format: uuid x-nullable: true enrollment_flow: title: Enrollment flow description: Flow to use when enrolling new users. type: string format: uuid x-nullable: true object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true provider_type: title: Provider type type: string maxLength: 255 minLength: 1 request_token_url: title: Request Token URL description: URL used to request the initial token. This URL is only required for OAuth 1. type: string maxLength: 255 authorization_url: title: Authorization URL description: URL the user is redirect to to conest the flow. type: string maxLength: 255 minLength: 1 access_token_url: title: Access Token URL description: URL used by authentik to retrive tokens. type: string maxLength: 255 minLength: 1 profile_url: title: Profile URL description: URL used by authentik to get user information. type: string maxLength: 255 minLength: 1 consumer_key: title: Consumer key type: string minLength: 1 consumer_secret: title: Consumer secret type: string minLength: 1 callback_url: title: Callback url type: string readOnly: true SAMLSource: description: SAMLSource Serializer required: - name - slug - sso_url type: object properties: pk: title: Pbm uuid type: string format: uuid readOnly: true name: title: Name description: Source's display Name. type: string minLength: 1 slug: title: Slug description: Internal source name, used in URLs. type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ maxLength: 50 minLength: 1 enabled: title: Enabled type: boolean authentication_flow: title: Authentication flow description: Flow to use when authenticating existing users. type: string format: uuid x-nullable: true enrollment_flow: title: Enrollment flow description: Flow to use when enrolling new users. type: string format: uuid x-nullable: true object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true issuer: title: Issuer description: Also known as Entity ID. Defaults the Metadata URL. type: string sso_url: title: SSO URL description: URL that the initial Login request is sent to. type: string format: uri maxLength: 200 minLength: 1 slo_url: title: SLO URL description: Optional URL if your IDP supports Single-Logout. type: string format: uri maxLength: 200 x-nullable: true allow_idp_initiated: title: Allow idp initiated description: Allows authentication flows initiated by the IdP. This can be a security risk, as no validation of the request ID is done. type: boolean name_id_policy: title: Name id policy description: NameID Policy sent to the IdP. Can be unset, in which case no Policy is sent. type: string enum: - urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress - urn:oasis:names:tc:SAML:2.0:nameid-format:persistent - urn:oasis:names:tc:SAML:2.0:nameid-format:X509SubjectName - urn:oasis:names:tc:SAML:2.0:nameid-format:WindowsDomainQualifiedName - urn:oasis:names:tc:SAML:2.0:nameid-format:transient binding_type: title: Binding type type: string enum: - REDIRECT - POST - POST_AUTO signing_kp: title: Singing Keypair description: Keypair which is used to sign outgoing requests. Leave empty to disable signing. type: string format: uuid x-nullable: true digest_algorithm: title: Digest algorithm type: string enum: - http://www.w3.org/2000/09/xmldsig#sha1 - http://www.w3.org/2001/04/xmlenc#sha256 - http://www.w3.org/2001/04/xmldsig-more#sha384 - http://www.w3.org/2001/04/xmlenc#sha512 signature_algorithm: title: Signature algorithm type: string enum: - http://www.w3.org/2000/09/xmldsig#rsa-sha1 - http://www.w3.org/2001/04/xmldsig-more#rsa-sha256 - http://www.w3.org/2001/04/xmldsig-more#rsa-sha384 - http://www.w3.org/2001/04/xmldsig-more#rsa-sha512 - http://www.w3.org/2000/09/xmldsig#dsa-sha1 temporary_user_delete_after: title: Delete temporary users after description: "Time offset when temporary users should be deleted. This only\ \ applies if your IDP uses the NameID Format 'transient', and the user doesn't\ \ log out manually. (Format: hours=1;minutes=2;seconds=3)." type: string minLength: 1 AuthenticatorStaticStage: description: AuthenticatorStaticStage Serializer required: - name type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' configure_flow: title: Configure flow description: Flow used by an authenticated user to configure this Stage. If empty, user will not be able to configure this stage. type: string format: uuid x-nullable: true token_count: title: Token count type: integer maximum: 2147483647 minimum: -2147483648 AuthenticatorTOTPStage: description: AuthenticatorTOTPStage Serializer required: - name - digits type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' configure_flow: title: Configure flow description: Flow used by an authenticated user to configure this Stage. If empty, user will not be able to configure this stage. type: string format: uuid x-nullable: true digits: title: Digits type: integer enum: - 6 - 8 AuthenticatorValidateStage: description: AuthenticatorValidateStage Serializer required: - name type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' not_configured_action: title: Not configured action type: string enum: - skip - deny - configure device_classes: description: '' type: array items: title: Device classes type: string minLength: 1 configuration_stage: title: Configuration stage description: Stage used to configure Authenticator when user doesn't have any compatible devices. After this configuration Stage passes, the user is not prompted again. type: string format: uuid x-nullable: true AuthenticateWebAuthnStage: description: AuthenticateWebAuthnStage Serializer required: - name type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' CaptchaStage: description: CaptchaStage Serializer required: - name - public_key - private_key type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' public_key: title: Public key description: Public key, acquired from https://www.google.com/recaptcha/intro/v3.html type: string minLength: 1 private_key: title: Private key description: Private key, acquired from https://www.google.com/recaptcha/intro/v3.html type: string minLength: 1 ConsentStage: description: ConsentStage Serializer required: - name type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' mode: title: Mode type: string enum: - always_require - permanent - expiring consent_expire_in: title: Consent expires in description: 'Offset after which consent expires. (Format: hours=1;minutes=2;seconds=3).' type: string minLength: 1 DummyStage: description: DummyStage Serializer required: - name type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' EmailStage: description: EmailStage Serializer required: - name type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' use_global_settings: title: Use global settings description: When enabled, global Email connection settings will be used and connection settings below will be ignored. type: boolean host: title: Host type: string minLength: 1 port: title: Port type: integer maximum: 2147483647 minimum: -2147483648 username: title: Username type: string password: title: Password type: string use_tls: title: Use tls type: boolean use_ssl: title: Use ssl type: boolean timeout: title: Timeout type: integer maximum: 2147483647 minimum: -2147483648 from_address: title: From address type: string format: email maxLength: 254 minLength: 1 token_expiry: title: Token expiry description: Time in minutes the token sent is valid. type: integer maximum: 2147483647 minimum: -2147483648 subject: title: Subject type: string minLength: 1 template: title: Template type: string enum: - email/password_reset.html - email/account_confirmation.html IdentificationStage: description: IdentificationStage Serializer required: - name - user_fields type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' user_fields: description: '' type: array items: title: User fields type: string enum: - email - username case_insensitive_matching: title: Case insensitive matching description: When enabled, user fields are matched regardless of their casing. type: boolean show_matched_user: title: Show matched user description: When a valid username/email has been entered, and this option is enabled, the user's username and avatar will be shown. Otherwise, the text that the user entered will be shown type: boolean enrollment_flow: title: Enrollment flow description: Optional enrollment flow, which is linked at the bottom of the page. type: string format: uuid x-nullable: true recovery_flow: title: Recovery flow description: Optional recovery flow, which is linked at the bottom of the page. type: string format: uuid x-nullable: true Invitation: description: Invitation Serializer type: object properties: pk: title: Invite uuid type: string format: uuid readOnly: true expires: title: Expires type: string format: date-time x-nullable: true fixed_data: title: Fixed data description: Optional fixed data to enforce on user enrollment. type: object created_by: description: Custom User model to allow easier adding o f user-based settings required: - password - username - name type: object properties: id: title: ID type: integer readOnly: true password: title: Password type: string maxLength: 128 minLength: 1 last_login: title: Last login type: string format: date-time x-nullable: true username: title: Username description: Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only. type: string pattern: ^[\w.@+-]+$ maxLength: 150 minLength: 1 first_name: title: First name type: string maxLength: 150 last_name: title: Last name type: string maxLength: 150 email: title: Email address type: string format: email maxLength: 254 is_active: title: Active description: Designates whether this user should be treated as active. Unselect this instead of deleting accounts. type: boolean date_joined: title: Date joined type: string format: date-time uuid: title: Uuid type: string format: uuid readOnly: true name: title: Name description: User's display name. type: string minLength: 1 password_change_date: title: Password change date type: string format: date-time readOnly: true attributes: title: Attributes type: object groups: description: '' type: array items: description: Groups are a generic way of categorizing users to apply permissions, or some other label, to those users. A user can belong to any number of groups. A user in a group automatically has all the permissions granted to that group. For example, if the group 'Site editors' has the permission can_edit_home_page, any user in that group will have that permission. Beyond permissions, groups are a convenient way to categorize users to apply some label, or extended functionality, to them. For example, you could create a group 'Special users', and you could write code that would do special things to those users -- such as giving them access to a members-only portion of your site, or sending them members-only email messages. required: - name type: object properties: id: title: ID type: integer readOnly: true name: title: Name type: string maxLength: 150 minLength: 1 permissions: type: array items: type: integer uniqueItems: true readOnly: true user_permissions: description: '' type: array items: description: "The permissions system provides a way to assign permissions\ \ to specific users and groups of users. The permission system is\ \ used by the Django admin site, but may also be useful in your own\ \ code. The Django admin site uses permissions as follows: - The \"\ add\" permission limits the user's ability to view the \"add\" form\ \ and add an object. - The \"change\" permission limits a user's ability\ \ to view the change list, view the \"change\" form and change an\ \ object. - The \"delete\" permission limits the ability to delete\ \ an object. - The \"view\" permission limits the ability to view\ \ an object. Permissions are set globally per type of object, not\ \ per specific object instance. It is possible to say \"Mary may change\ \ news stories,\" but it's not currently possible to say \"Mary may\ \ change news stories, but only the ones she created herself\" or\ \ \"Mary may only change news stories that have a certain status or\ \ publication date.\" The permissions listed above are automatically\ \ created for each model." required: - name - codename - content_type type: object properties: id: title: ID type: integer readOnly: true name: title: Name type: string maxLength: 255 minLength: 1 codename: title: Codename type: string maxLength: 100 minLength: 1 content_type: title: Content type type: integer readOnly: true sources: description: '' type: array items: description: Base Authentication source, i.e. an OAuth Provider, SAML Remote or LDAP Server required: - name - slug type: object properties: pbm_uuid: title: Pbm uuid type: string format: uuid readOnly: true name: title: Name description: Source's display Name. type: string minLength: 1 slug: title: Slug description: Internal source name, used in URLs. type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ maxLength: 50 minLength: 1 enabled: title: Enabled type: boolean authentication_flow: title: Authentication flow description: Flow to use when authenticating existing users. type: string format: uuid x-nullable: true enrollment_flow: title: Enrollment flow description: Flow to use when enrolling new users. type: string format: uuid x-nullable: true policies: type: array items: type: string format: uuid readOnly: true uniqueItems: true property_mappings: type: array items: type: string format: uuid uniqueItems: true readOnly: true ak_groups: description: '' type: array items: description: Custom Group model which supports a basic hierarchy required: - name - parent type: object properties: group_uuid: title: Group uuid type: string format: uuid readOnly: true name: title: Name type: string maxLength: 80 minLength: 1 is_superuser: title: Is superuser description: Users added to this group will be superusers. type: boolean attributes: title: Attributes type: object parent: title: Parent type: string format: uuid readOnly: true readOnly: true InvitationStage: description: InvitationStage Serializer required: - name type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' continue_flow_without_invitation: title: Continue flow without invitation description: If this flag is set, this Stage will jump to the next Stage when no Invitation is given. By default this Stage will cancel the Flow when no invitation is given. type: boolean PasswordStage: description: PasswordStage Serializer required: - name - backends type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' backends: description: '' type: array items: title: Backends type: string minLength: 1 configure_flow: title: Configure flow description: Flow used by an authenticated user to configure this Stage. If empty, user will not be able to configure this stage. type: string format: uuid x-nullable: true failed_attempts_before_cancel: title: Failed attempts before cancel description: How many attempts a user has before the flow is canceled. To lock the user out, use a reputation policy and a user_write stage. type: integer maximum: 2147483647 minimum: -2147483648 Prompt: description: Prompt Serializer required: - field_key - label - type type: object properties: pk: title: Prompt uuid type: string format: uuid readOnly: true field_key: title: Field key description: Name of the form field, also used to store the value type: string format: slug pattern: ^[-a-zA-Z0-9_]+$ maxLength: 50 minLength: 1 label: title: Label type: string minLength: 1 type: title: Type type: string enum: - text - username - email - password - number - checkbox - date - date-time - separator - hidden - static required: title: Required type: boolean placeholder: title: Placeholder type: string order: title: Order type: integer maximum: 2147483647 minimum: -2147483648 promptstage_set: description: '' type: array items: $ref: '#/definitions/Stage' PromptStage: description: PromptStage Serializer required: - name - fields type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' fields: type: array items: type: string format: uuid uniqueItems: true validation_policies: type: array items: type: string format: uuid uniqueItems: true UserDeleteStage: description: UserDeleteStage Serializer required: - name type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' UserLoginStage: description: UserLoginStage Serializer required: - name type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' session_duration: title: Session duration description: 'Determines how long a session lasts. Default of 0 means that the sessions lasts until the browser is closed. (Format: hours=-1;minutes=-2;seconds=-3)' type: string minLength: 1 UserLogoutStage: description: UserLogoutStage Serializer required: - name type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow' UserWriteStage: description: UserWriteStage Serializer required: - name type: object properties: pk: title: Stage uuid type: string format: uuid readOnly: true name: title: Name type: string minLength: 1 object_type: title: Object type type: string readOnly: true verbose_name: title: Verbose name type: string readOnly: true verbose_name_plural: title: Verbose name plural type: string readOnly: true flow_set: description: '' type: array items: $ref: '#/definitions/Flow'