diff --git a/Pipfile b/Pipfile index ca0f17763..61e47573a 100644 --- a/Pipfile +++ b/Pipfile @@ -22,7 +22,7 @@ django-storages = "*" djangorestframework = "*" djangorestframework-guardian = "*" docker = "*" -drf_yasg2 = "*" +drf_yasg = "*" facebook-sdk = "*" geoip2 = "*" gunicorn = "*" diff --git a/Pipfile.lock b/Pipfile.lock index bbd7832f1..3efed540a 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "68769bb637149051a61453da2443f9b5d275a68a34bdb6e50cde2d899dd4c127" + "sha256": "7830a9bde580b67d4e39a7f51dbdcb93757eba7eee67842029c83ed1468ffafe" }, "pipfile-spec": 6, "requires": { @@ -56,6 +56,7 @@ "sha256:f881853d2643a29e643609da57b96d5f9c9b93f62429dcc1cbb413c7d07f0e1a", "sha256:fe60131d21b31fd1a14bd43e6bb88256f69dfc3188b3a89d736d6c71ed43ec95" ], + "markers": "python_version >= '3.6'", "version": "==3.7.4.post0" }, "aioredis": { @@ -70,6 +71,7 @@ "sha256:1e759a7f202d910939de6eca45c23a107f6b71111f41d1282c648e9ac3d21901", "sha256:affdd263d8b8eb3c98170b78bf83867cdb6a14901d586e00ddb65bfe2f0c4e60" ], + "markers": "python_version >= '3.6'", "version": "==5.0.5" }, "asgiref": { @@ -77,6 +79,7 @@ "sha256:5ee950735509d04eb673bd7f7120f8fa1c9e2df495394992c73234d526907e17", "sha256:7162a3cb30ab0609f1a4c95938fd73e8604f63bdba516a7f7d64b83ff09478f0" ], + "markers": "python_version >= '3.5'", "version": "==3.3.1" }, "async-timeout": { @@ -84,6 +87,7 @@ "sha256:0c3c816a028d47f659d6ff5c745cb2acf1f966da1fe5c19c77a70282b25f4c5f", "sha256:4291ca197d287d274d0b6cb5d6f8f8f82d434ed288f962539ff18cc9012f9ea3" ], + "markers": "python_full_version >= '3.5.3'", "version": "==3.0.1" }, "attrs": { @@ -91,6 +95,7 @@ "sha256:31b2eced602aa8423c2aea9c76a724617ed67cf9513173fd3a4f03e3a929c7e6", "sha256:832aa3cde19744e49938b91fea06d69ecb9e649c93ba974535d08ad92164f700" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==20.3.0" }, "autobahn": { @@ -98,6 +103,7 @@ "sha256:9195df8af03b0ff29ccd4b7f5abbde957ee90273465942205f9a1bad6c3f07ac", "sha256:e126c1f583e872fb59e79d36977cfa1f2d0a8a79f90ae31f406faae7664b8e03" ], + "markers": "python_version >= '3.7'", "version": "==21.3.1" }, "automat": { @@ -127,6 +133,7 @@ "sha256:28506d23ffa9abf5666c2c909c7edc83a1112cd44fe74eb1a4960df561531e98", "sha256:54587d3c9d0d98ac579681245ea36f547cd5048e2bb9212e5e7166a963bcb562" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", "version": "==1.20.39" }, "cachetools": { @@ -134,6 +141,7 @@ "sha256:1d9d5f567be80f7c07d765e21b814326d78c61eb0c3a637dffc0e5d1796cb2e2", "sha256:f469e29e7aa4cff64d8de4aad95ce76de8ea1125a16c68e0d93f65c3c3dc92e9" ], + "markers": "python_version ~= '3.5'", "version": "==4.2.1" }, "cbor2": { @@ -220,6 +228,7 @@ "sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa", "sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==4.0.0" }, "click": { @@ -227,6 +236,7 @@ "sha256:d2b5255c7c6349bc1bd1e59e08cd12acbbd63ce649f2588755783aa94dfb6b1a", "sha256:dacca89f4bfadd5de3d7489b7c8a566eee0d3676333fbb50030263894c38c0dc" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==7.1.2" }, "click-didyoumean": { @@ -300,6 +310,7 @@ "sha256:0052c9887600c57054a5867d4b0240159fa009faa3bcf6a1627271d9cdcb005a", "sha256:c22b692707f514de9013651ecb687f2abe4f35cf6fe292ece634e9f1737bc7e3" ], + "markers": "python_version >= '3.6'", "version": "==3.0.1" }, "defusedxml": { @@ -405,13 +416,13 @@ "index": "pypi", "version": "==4.4.4" }, - "drf-yasg2": { + "drf-yasg": { "hashes": [ - "sha256:7037a8041eb5d1073fa504a284fc889685f93d0bfd008a963db1b366db786734", - "sha256:75e661ca5cf15eb44fcfab408c7b864f87c20794f564aa08b3a31817a857f19d" + "sha256:8b72e5b1875931a8d11af407be3a9a5ba8776541492947a0df5bafda6b7f8267", + "sha256:d50f197c7f02545d0b736df88c6d5cf874f8fea2507ad85ad7de6ae5bf2d9e5a" ], "index": "pypi", - "version": "==1.19.4" + "version": "==1.20.0" }, "facebook-sdk": { "hashes": [ @@ -425,6 +436,7 @@ "hashes": [ "sha256:b1bead90b70cf6ec3f0710ae53a525360fa360d306a86583adc6bf83a4db537d" ], + "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==0.18.2" }, "geoip2": { @@ -440,6 +452,7 @@ "sha256:9bd436d19ab047001a1340720d2b629eb96dd503258c524921ec2af3ee88a80e", "sha256:dcaba3aa9d4e0e96fd945bf25a86b6f878fcb05770b67adbeb50a63ca4d28a5e" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", "version": "==1.28.0" }, "gunicorn": { @@ -454,6 +467,7 @@ "sha256:36a3cb8c0a032f56e2da7084577878a035d3b61d104230d4bd49c0c6b555a9c6", "sha256:47222cb6067e4a307d535814917cd98fd0a57b6788ce715755fa2b6c28b56042" ], + "markers": "python_version >= '3.6'", "version": "==0.12.0" }, "hiredis": { @@ -500,6 +514,7 @@ "sha256:f52010e0a44e3d8530437e7da38d11fb822acfb0d5b12e9cd5ba655509937ca0", "sha256:f8196f739092a78e4f6b1b2172679ed3343c39c61a3e9d722ce6fcf1dac2824a" ], + "markers": "python_version >= '3.6'", "version": "==2.0.0" }, "httptools": { @@ -545,6 +560,7 @@ "sha256:1a29730d366e996aaacffb2f1f1cb9593dc38e2ddd30c91250c6dde09ea9b417", "sha256:f38b2b640938a4f35ade69ac3d053042959b62a0f1076a5bbaa1b9526605a8a2" ], + "markers": "python_version >= '3.5'", "version": "==0.5.1" }, "itypes": { @@ -559,6 +575,7 @@ "sha256:03e47ad063331dd6a3f04a43eddca8a966a26ba0c5b7207a9a9e4e08f1b29419", "sha256:a6d58433de0ae800347cab1fa3043cebbabe8baa9d29e668f1c768cb87a333c6" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==2.11.3" }, "jmespath": { @@ -566,6 +583,7 @@ "sha256:b85d0567b8666149a93172712e68920734333c0ce7e89b78b3e987f71e5ed4f9", "sha256:cdf6525904cc597730141d61b36f2e4b8ecc257c420fa2f4549bac2c2d0cb72f" ], + "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==0.10.0" }, "jsonschema": { @@ -580,6 +598,7 @@ "sha256:6dc509178ac4269b0e66ab4881f70a2035c33d3a622e20585f965986a5182006", "sha256:f4965fba0a4718d47d470beeb5d6446e3357a62402b16c510b6a2f251e05ac3c" ], + "markers": "python_version >= '3.6'", "version": "==5.0.2" }, "kubernetes": { @@ -592,8 +611,11 @@ }, "ldap3": { "hashes": [ - "sha256:18c3ee656a6775b9b0d60f7c6c5b094d878d1d90fc03d56731039f0a4b546a91", - "sha256:c1df41d89459be6f304e0ceec4b00fdea533dbbcd83c802b1272dcdb94620b57" + "sha256:4139c91f0eef9782df7b77c8cbc6243086affcb6a8a249b768a9658438e5da59", + "sha256:8c949edbad2be8a03e719ba48bd6779f327ec156929562814b3e84ab56889c8c", + "sha256:c1df41d89459be6f304e0ceec4b00fdea533dbbcd83c802b1272dcdb94620b57", + "sha256:afc6fc0d01f02af82cd7bfabd3bbfd5dc96a6ae91e97db0a2dab8a0f1b436056", + "sha256:18c3ee656a6775b9b0d60f7c6c5b094d878d1d90fc03d56731039f0a4b546a91" ], "index": "pypi", "version": "==2.9" @@ -695,12 +717,14 @@ "sha256:e8313f01ba26fbbe36c7be1966a7b7424942f670f38e666995b88d012765b9be", "sha256:feb7b34d6325451ef96bc0e36e1a6c0c1c64bc1fbec4b854f4529e51887b1621" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==1.1.1" }, "maxminddb": { "hashes": [ "sha256:47e86a084dd814fac88c99ea34ba3278a74bc9de5a25f4b815b608798747c7dc" ], + "markers": "python_version >= '3.6'", "version": "==2.0.3" }, "msgpack": { @@ -776,6 +800,7 @@ "sha256:f21756997ad8ef815d8ef3d34edd98804ab5ea337feedcd62fb52d22bf531281", "sha256:fc13a9524bc18b6fb6e0dbec3533ba0496bbed167c56d0aabefd965584557d80" ], + "markers": "python_version >= '3.6'", "version": "==5.1.0" }, "oauthlib": { @@ -783,6 +808,7 @@ "sha256:bee41cc35fcca6e988463cacc3bcb8a96224f470ca547e697b604cc697b2f889", "sha256:df884cd6cbe20e32633f1db1072e9356f53638e4361bef4e8b03c9127c9328ea" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==3.1.0" }, "packaging": { @@ -805,6 +831,7 @@ "sha256:bf00f22079f5fadc949f42ae8ff7f05702826a97059ffcc6281036ad40ac6f04", "sha256:e1b4f11b9336a28fa11810bc623c357420f69dfdb6d2dac41ca2c21a55c033bc" ], + "markers": "python_full_version >= '3.6.1'", "version": "==3.0.18" }, "psycopg2-binary": { @@ -850,15 +877,37 @@ }, "pyasn1": { "hashes": [ + "sha256:fec3e9d8e36808a28efb59b489e4528c10ad0f480e57dcc32b4de5c9d8c9fdf3", "sha256:39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d", - "sha256:aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba" + "sha256:0458773cfe65b153891ac249bcf1b5f8f320b7c2ce462151f8fa74de8934becf", + "sha256:e89bf84b5437b532b0803ba5c9a5e054d21fec423a89952a74f87fa2c9b7bce2", + "sha256:99fcc3c8d804d1bc6d9a099921e39d827026409a58f2a720dcdb89374ea0c776", + "sha256:6e7545f1a61025a4e58bb336952c5061697da694db1cae97b116e9c46abcf7c8", + "sha256:7ab8a544af125fb704feadb008c99a88805126fb525280b2270bb25cc1d78a12", + "sha256:78fa6da68ed2727915c4767bb386ab32cdba863caa7dbe473eaae45f9959da86", + "sha256:014c0e9976956a08139dc0712ae195324a75e142284d5f87f1a87ee1b068a359", + "sha256:03840c999ba71680a131cfaee6fab142e1ed9bbd9c693e285cc6aca0d555e576", + "sha256:08c3c53b75eaa48d71cf8c710312316392ed40899cb34710d092e96745a358b7", + "sha256:aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba", + "sha256:5c9414dcfede6e441f7e8f81b43b34e834731003427e5b09e4e00e3172a10f00" ], "version": "==0.4.8" }, "pyasn1-modules": { "hashes": [ + "sha256:a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74", + "sha256:b80486a6c77252ea3a3e9b1e360bc9cf28eaac41263d173c032581ad2f20fe45", + "sha256:15b7c67fabc7fc240d87fb9aabf999cf82311a6d6fb2c70d00d3d0604878c811", + "sha256:0845a5582f6a02bb3e1bde9ecfc4bfcae6ec3210dd270522fee602365430c3f8", + "sha256:fe0644d9ab041506b62782e92b06b8c68cca799e1a9636ec398675459e031405", + "sha256:426edb7a5e8879f1ec54a1864f16b882c2837bfd06eee62f2c982315ee2473ed", + "sha256:a99324196732f53093a84c4369c996713eb8c89d360a496b599fb1a9c47fc3eb", + "sha256:c29a5e5cc7a3f05926aff34e097e84f8589cd790ce0ed41b67aed6857b26aafd", + "sha256:0fe1b68d1e486a1ed5473f1302bd991c1611d319bba158e98b106ff86e1d7199", + "sha256:65cebbaffc913f4fe9e4808735c95ea22d7a7775646ab690518c056784bc21b4", "sha256:905f84c712230b2c592c19470d3ca8d552de726050d1d1716282a1f6146be65e", - "sha256:a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74" + "sha256:f39edd8c4ecaa4556e989147ebf219227e2cd2e8a43c7e7fcb1f1c18c5fd6a3d", + "sha256:cbac4bc38d117f2a49aeedec4407d23e8866ea4ac27ff2cf7fb3e5b570df19e0" ], "version": "==0.2.8" }, @@ -867,6 +916,7 @@ "sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0", "sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==2.20" }, "pycryptodome": { @@ -938,6 +988,7 @@ "sha256:f933ecf4cb736c7af60a6a533db2bf569717f2318b265f92907acff1db43bc34", "sha256:fc9c55dc1ed57db76595f2d19a479fc1c3a1be2c9da8de798a93d286c5f65f38" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==3.10.1" }, "pyhamcrest": { @@ -945,6 +996,7 @@ "sha256:412e00137858f04bde0729913874a48485665f2d36fe9ee449f26be864af9316", "sha256:7ead136e03655af85069b6f47b23eb7c3e5c221aa9f022a4fbb499f5b7308f29" ], + "markers": "python_version >= '3.5'", "version": "==2.0.2" }, "pyjwkest": { @@ -966,12 +1018,14 @@ "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1", "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b" ], + "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==2.4.7" }, "pyrsistent": { "hashes": [ "sha256:2e636185d9eb976a18a8a8e96efce62f2905fea90041958d8cc2a189756ebf3e" ], + "markers": "python_version >= '3.5'", "version": "==0.17.3" }, "python-dateutil": { @@ -979,6 +1033,7 @@ "sha256:73ebfe9dbf22e832286dafa60473e4cd239f8592f699aa5adaf10050e6e1823c", "sha256:75bb3f31ea686f1197762692a9ee6a7550b59fc6ca3a1f4b5d7e32fb98e2da2a" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==2.8.1" }, "python-dotenv": { @@ -1035,6 +1090,7 @@ "sha256:0e7e0cfca8660dea8b7d5cd8c4f6c5e29e11f31158c0b0ae91a397f00e5a05a2", "sha256:432b788c4530cfe16d8d943a09d40ca6c16149727e4afe8c2c9d5580c59d9f24" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==3.5.3" }, "requests": { @@ -1042,12 +1098,14 @@ "sha256:27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804", "sha256:c210084e36a42ae6b9219e00e48287def368a26d03a048ddad7bfee44f75871e" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==2.25.1" }, "requests-oauthlib": { "hashes": [ "sha256:7f71572defaecd16372f9006f33c2ec8c077c3cfa6f5911a9a90202beb513f3d", - "sha256:b4261601a71fd721a8bd6d7aa1cc1d6a8a93b4a9f5e96626f8e4d91e8beeaa6a" + "sha256:b4261601a71fd721a8bd6d7aa1cc1d6a8a93b4a9f5e96626f8e4d91e8beeaa6a", + "sha256:fa6c47b933f01060936d87ae9327fead68768b69c6c9ea2109c48be30f2d4dbc" ], "index": "pypi", "version": "==1.3.0" @@ -1062,10 +1120,11 @@ }, "ruamel.yaml": { "hashes": [ - "sha256:3572505e63dd35b5dea62cd0386d03c4f2a53da29a3af09f428114cc85c564aa", - "sha256:3a41b30235cc6ff7baee0321ffa99e7f94bbc7c7e0f2cac1d75b6b24fc24f202" + "sha256:0850def9ebca23b3a8c64c4b4115ebb6b364a10d49f89d289a26ee965e1e7d9d", + "sha256:8f1e15421668b9edf30ed02899f5f81aff9808a4271935776f61a99a569a13da" ], - "version": "==0.17.0" + "markers": "python_version >= '3'", + "version": "==0.17.2" }, "ruamel.yaml.clib": { "hashes": [ @@ -1101,7 +1160,7 @@ "sha256:e9f7d1d8c26a6a12c23421061f9022bb62704e38211fe375c645485f38df34a2", "sha256:f6061a31880c1ed6b6ce341215336e2f3d0c1deccd84957b6fa8ca474b41e89f" ], - "markers": "platform_python_implementation == 'CPython' and python_version < '3.10'", + "markers": "python_version < '3.10' and platform_python_implementation == 'CPython'", "version": "==0.2.2" }, "s3transfer": { @@ -1132,6 +1191,7 @@ "sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259", "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==1.15.0" }, "sqlparse": { @@ -1139,6 +1199,7 @@ "sha256:017cde379adbd6a1f15a61873f43e8274179378e95ef3fede90b5aa64d304ed0", "sha256:0f91fd2e829c44362cbcfab3e9ae12e22badaa8a29ad5ff599f9ec109f0454e8" ], + "markers": "python_version >= '3.5'", "version": "==0.4.1" }, "structlog": { @@ -1194,6 +1255,7 @@ "sha256:7d6f89745680233f1c4db9ddb748df5e88d2a7a37962be174c0fd04c8dba1dc8", "sha256:c16b55f9a67b2419cfdf8846576e2ec9ba94fe6978a83080c352a80db31c93fb" ], + "markers": "python_version >= '3.6'", "version": "==21.2.1" }, "typing-extensions": { @@ -1209,6 +1271,7 @@ "sha256:07620c3f3f8eed1f12600845892b0e036a2420acf513c53f7de0abd911a5894f", "sha256:5af8ad10cec94f215e3f48112de2022e1d5a37ed427fbd88652fa908f2ab7cae" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==3.0.1" }, "urllib3": { @@ -1253,6 +1316,7 @@ "sha256:4c9dceab6f76ed92105027c49c823800dd33cacce13bdedc5b914e3514b7fb30", "sha256:7d3b1624a953da82ef63462013bbd271d3eb75751489f9807598e8f340bd637e" ], + "markers": "python_version >= '3.6'", "version": "==5.0.0" }, "watchgod": { @@ -1282,6 +1346,7 @@ "sha256:44b5df8f08c74c3d82d28100fdc81f4536809ce98a17f0757557813275fbb663", "sha256:63509b41d158ae5b7f67eb4ad20fecbb4eee99434e73e140354dc3ff8e09716f" ], + "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==0.58.0" }, "websockets": { @@ -1370,6 +1435,7 @@ "sha256:f0b059678fd549c66b89bed03efcabb009075bd131c248ecdf087bdb6faba24a", "sha256:fcbb48a93e8699eae920f8d92f7160c03567b421bc17362a9ffbbd706a816f71" ], + "markers": "python_version >= '3.6'", "version": "==1.6.3" }, "zope.interface": { @@ -1426,6 +1492,7 @@ "sha256:fa939c2e2468142c9773443d4038e7c915b0cc1b670d3c9192bdc503f7ea73e9", "sha256:fcc5c1f95102989d2e116ffc8467963554ce89f30a65a3ea86a4d06849c498d8" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==5.3.0" } }, @@ -1442,6 +1509,7 @@ "sha256:6b0ed1af831570e500e2437625979eaa3b36011f66ddfc4ce930128610258ca9", "sha256:cd80bf957c49765dce6d92c43163ff9d2abc43132ce64d4b1b47717c6d2522df" ], + "markers": "python_version >= '3.6'", "version": "==2.5.2" }, "attrs": { @@ -1449,6 +1517,7 @@ "sha256:31b2eced602aa8423c2aea9c76a724617ed67cf9513173fd3a4f03e3a929c7e6", "sha256:832aa3cde19744e49938b91fea06d69ecb9e649c93ba974535d08ad92164f700" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==20.3.0" }, "bandit": { @@ -1471,6 +1540,7 @@ "sha256:37f927ea17cde7ae2d7baf832f8e80ce3777624554a653006c9144f8017fe410", "sha256:762cb2bfad61f4ec8e2bdf452c7c267416f8c70dd9ecb1653fd0bbb01fa936e6" ], + "markers": "python_version >= '3.5'", "version": "==1.0.1" }, "bumpversion": { @@ -1486,6 +1556,7 @@ "sha256:d2b5255c7c6349bc1bd1e59e08cd12acbbd63ce649f2588755783aa94dfb6b1a", "sha256:dacca89f4bfadd5de3d7489b7c8a566eee0d3676333fbb50030263894c38c0dc" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'", "version": "==7.1.2" }, "colorama": { @@ -1559,6 +1630,7 @@ "sha256:6c4cc71933456991da20917998acbe6cf4fb41eeaab7d6d67fbc05ecd4c865b0", "sha256:96bf5c08b157a666fec41129e6d327235284cca4c81e92109260f353ba138005" ], + "markers": "python_version >= '3.4'", "version": "==4.0.7" }, "gitpython": { @@ -1566,6 +1638,7 @@ "sha256:3283ae2fba31c913d857e12e5ba5f9a7772bbc064ae2bb09efafa71b0dd4939b", "sha256:be27633e7509e58391f10207cd32b2a6cf5b908f92d9cd30da2e514e1137af61" ], + "markers": "python_version >= '3.4'", "version": "==3.1.14" }, "iniconfig": { @@ -1580,6 +1653,7 @@ "sha256:0a943902919f65c5684ac4e0154b1ad4fac6dcaa5d9f3426b732f1c8b5419be6", "sha256:2bb1680aad211e3c9944dbce1d4ba09a989f04e238296c87fe2139faa26d655d" ], + "markers": "python_version >= '3.6' and python_version < '4.0'", "version": "==5.8.0" }, "lazy-object-proxy": { @@ -1607,6 +1681,7 @@ "sha256:ed361bb83436f117f9917d282a456f9e5009ea12fd6de8742d1a4752c3017e93", "sha256:f5144c75445ae3ca2057faac03fda5a902eff196702b0a24daf1d6ce0650514b" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'", "version": "==1.6.0" }, "mccabe": { @@ -1643,6 +1718,7 @@ "sha256:5fad80b613c402d5b7df7bd84812548b2a61e9977387a80a5fc5c396492b13c9", "sha256:b236cde0ac9a6aedd5e3c34517b423cd4fd97ef723849da6b0d2231142d89c00" ], + "markers": "python_version >= '2.6'", "version": "==5.5.1" }, "pluggy": { @@ -1650,6 +1726,7 @@ "sha256:15b2acde666561e1298d71b523007ed7364de07029219b604cf808bfa1c765b0", "sha256:966c145cd83c96502c3c3868f50408687b38434af77734af1e9ca461a4081d2d" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==0.13.1" }, "py": { @@ -1657,6 +1734,7 @@ "sha256:21b81bda15b66ef5e1a777a21c4dcd9c20ad3efd0b3f817e7a809035269e1bd3", "sha256:3b80836aa6d1feeaa108e046da6423ab8f6ceda6468545ae8d02d9d58d18818a" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==1.10.0" }, "pylint": { @@ -1687,6 +1765,7 @@ "sha256:c203ec8783bf771a155b207279b9bccb8dea02d8f0c9e5f8ead507bc3246ecc1", "sha256:ef9d7589ef3c200abe66653d3f1ab1033c3c419ae9b9bdb1240a85b024efc88b" ], + "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==2.4.7" }, "pytest": { @@ -1799,6 +1878,7 @@ "sha256:30639c035cdb23534cd4aa2dd52c3bf48f06e5f4a941509c8bafd8ce11080259", "sha256:8b74bedcbbbaca38ff6d7491d76f2b06b3592611af620f8426e82dddb04a5ced" ], + "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==1.15.0" }, "smmap": { @@ -1806,6 +1886,7 @@ "sha256:7e65386bd122d45405ddf795637b7f7d2b532e7e401d46bbe3fb49b9986d5182", "sha256:a9a7479e4c572e2e775c404dcd3080c8dc49f39918c2cf74913d30c4c478e3c2" ], + "markers": "python_version >= '3.5'", "version": "==4.0.0" }, "stevedore": { @@ -1813,6 +1894,7 @@ "sha256:3a5bbd0652bf552748871eaa73a4a8dc2899786bc497a2aa1fcb4dcdb0debeee", "sha256:50d7b78fbaf0d04cd62411188fa7eedcb03eb7f4c4b37005615ceebe582aa82a" ], + "markers": "python_version >= '3.6'", "version": "==3.3.0" }, "toml": { @@ -1820,6 +1902,7 @@ "sha256:806143ae5bfb6a3c6e736a764057db0e6a0e05e338b5630894a5f779cabb4f9b", "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f" ], + "markers": "python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==0.10.2" }, "typed-ast": { diff --git a/authentik/admin/api/metrics.py b/authentik/admin/api/metrics.py index ad3943e16..360ce263b 100644 --- a/authentik/admin/api/metrics.py +++ b/authentik/admin/api/metrics.py @@ -7,7 +7,7 @@ from django.db.models import Count, ExpressionWrapper, F, Model from django.db.models.fields import DurationField from django.db.models.functions import ExtractHour from django.utils.timezone import now -from drf_yasg2.utils import swagger_auto_schema, swagger_serializer_method +from drf_yasg.utils import swagger_auto_schema, swagger_serializer_method from rest_framework.fields import IntegerField, SerializerMethodField from rest_framework.permissions import IsAdminUser from rest_framework.request import Request diff --git a/authentik/admin/api/tasks.py b/authentik/admin/api/tasks.py index d3abd5dea..dfbca3140 100644 --- a/authentik/admin/api/tasks.py +++ b/authentik/admin/api/tasks.py @@ -5,7 +5,7 @@ from django.contrib import messages from django.db.models import Model from django.http.response import Http404 from django.utils.translation import gettext_lazy as _ -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework.decorators import action from rest_framework.fields import CharField, ChoiceField, DateTimeField, ListField from rest_framework.permissions import IsAdminUser diff --git a/authentik/admin/api/version.py b/authentik/admin/api/version.py index 3aa85277a..4f0f03178 100644 --- a/authentik/admin/api/version.py +++ b/authentik/admin/api/version.py @@ -3,7 +3,7 @@ from os import environ from django.core.cache import cache from django.db.models import Model -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from packaging.version import parse from rest_framework.fields import SerializerMethodField from rest_framework.mixins import ListModelMixin diff --git a/authentik/api/pagination_schema.py b/authentik/api/pagination_schema.py index 057bd8b72..3d4f86c61 100644 --- a/authentik/api/pagination_schema.py +++ b/authentik/api/pagination_schema.py @@ -1,8 +1,8 @@ """Swagger Pagination Schema class""" from typing import OrderedDict -from drf_yasg2 import openapi -from drf_yasg2.inspectors import PaginatorInspector +from drf_yasg import openapi +from drf_yasg.inspectors import PaginatorInspector class PaginationInspector(PaginatorInspector): diff --git a/authentik/api/schema.py b/authentik/api/schema.py index 56eb17c42..b75d20fbc 100644 --- a/authentik/api/schema.py +++ b/authentik/api/schema.py @@ -1,7 +1,7 @@ """Error Response schema, from https://github.com/axnsan12/drf-yasg/issues/224""" -from drf_yasg2 import openapi -from drf_yasg2.inspectors.view import SwaggerAutoSchema -from drf_yasg2.utils import force_real_str, is_list_view +from drf_yasg import openapi +from drf_yasg.inspectors.view import SwaggerAutoSchema +from drf_yasg.utils import force_real_str, is_list_view from rest_framework import exceptions, status from rest_framework.settings import api_settings diff --git a/authentik/api/v2/config.py b/authentik/api/v2/config.py index e2ec1b1dc..e878f024e 100644 --- a/authentik/api/v2/config.py +++ b/authentik/api/v2/config.py @@ -1,6 +1,6 @@ """core Configs API""" from django.db.models import Model -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework.fields import BooleanField, CharField, ListField from rest_framework.permissions import AllowAny from rest_framework.request import Request diff --git a/authentik/api/v2/urls.py b/authentik/api/v2/urls.py index 573e615e1..90747dc40 100644 --- a/authentik/api/v2/urls.py +++ b/authentik/api/v2/urls.py @@ -1,7 +1,7 @@ """api v2 urls""" from django.urls import path, re_path -from drf_yasg2 import openapi -from drf_yasg2.views import get_schema_view +from drf_yasg import openapi +from drf_yasg.views import get_schema_view from rest_framework import routers from rest_framework.permissions import AllowAny diff --git a/authentik/core/api/applications.py b/authentik/core/api/applications.py index 13ce217c0..c9fbc8430 100644 --- a/authentik/core/api/applications.py +++ b/authentik/core/api/applications.py @@ -1,7 +1,7 @@ """Application API Views""" from django.core.cache import cache from django.db.models import QuerySet -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework.decorators import action from rest_framework.fields import SerializerMethodField from rest_framework.request import Request @@ -49,7 +49,6 @@ class ApplicationSerializer(ModelSerializer): "meta_icon", "meta_description", "meta_publisher", - "policies", ] diff --git a/authentik/core/api/propertymappings.py b/authentik/core/api/propertymappings.py index ef3754b96..17a062a46 100644 --- a/authentik/core/api/propertymappings.py +++ b/authentik/core/api/propertymappings.py @@ -1,6 +1,6 @@ """PropertyMapping API Views""" from django.urls import reverse -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework import mixins from rest_framework.decorators import action from rest_framework.request import Request diff --git a/authentik/core/api/providers.py b/authentik/core/api/providers.py index bbee513f9..0dd676133 100644 --- a/authentik/core/api/providers.py +++ b/authentik/core/api/providers.py @@ -1,7 +1,7 @@ """Provider API Views""" from django.urls import reverse from django.utils.translation import gettext_lazy as _ -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework.decorators import action from rest_framework.fields import ReadOnlyField from rest_framework.request import Request diff --git a/authentik/core/api/sources.py b/authentik/core/api/sources.py index 8aee40e97..3fa14ad3e 100644 --- a/authentik/core/api/sources.py +++ b/authentik/core/api/sources.py @@ -2,7 +2,7 @@ from typing import Iterable from django.urls import reverse -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework import mixins from rest_framework.decorators import action from rest_framework.request import Request diff --git a/authentik/core/api/tokens.py b/authentik/core/api/tokens.py index aef414bff..127440bfd 100644 --- a/authentik/core/api/tokens.py +++ b/authentik/core/api/tokens.py @@ -1,7 +1,7 @@ """Tokens API Viewset""" from django.db.models.base import Model from django.http.response import Http404 -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework.decorators import action from rest_framework.fields import CharField from rest_framework.request import Request diff --git a/authentik/core/api/users.py b/authentik/core/api/users.py index f36d852a0..1584a6c50 100644 --- a/authentik/core/api/users.py +++ b/authentik/core/api/users.py @@ -2,7 +2,7 @@ from django.db.models.base import Model from django.urls import reverse_lazy from django.utils.http import urlencode -from drf_yasg2.utils import swagger_auto_schema, swagger_serializer_method +from drf_yasg.utils import swagger_auto_schema, swagger_serializer_method from guardian.utils import get_anonymous_user from rest_framework.decorators import action from rest_framework.fields import CharField, SerializerMethodField diff --git a/authentik/crypto/api.py b/authentik/crypto/api.py index 237548a6a..97be5a06a 100644 --- a/authentik/crypto/api.py +++ b/authentik/crypto/api.py @@ -4,7 +4,7 @@ from cryptography.hazmat.primitives.serialization import load_pem_private_key from cryptography.x509 import load_pem_x509_certificate from django.db.models import Model from django.utils.translation import gettext_lazy as _ -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework.decorators import action from rest_framework.fields import ( CharField, diff --git a/authentik/events/api/event.py b/authentik/events/api/event.py index 3eb7230bc..0c59cf10b 100644 --- a/authentik/events/api/event.py +++ b/authentik/events/api/event.py @@ -2,7 +2,7 @@ import django_filters from django.db.models.aggregates import Count from django.db.models.fields.json import KeyTextTransform -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from guardian.shortcuts import get_objects_for_user from rest_framework.decorators import action from rest_framework.fields import CharField, DictField, IntegerField diff --git a/authentik/events/api/notification_transport.py b/authentik/events/api/notification_transport.py index b20d0bd97..7fdb5d260 100644 --- a/authentik/events/api/notification_transport.py +++ b/authentik/events/api/notification_transport.py @@ -1,6 +1,6 @@ """NotificationTransport API Views""" from django.http.response import Http404 -from drf_yasg2.utils import no_body, swagger_auto_schema +from drf_yasg.utils import no_body, swagger_auto_schema from rest_framework.decorators import action from rest_framework.fields import CharField, ListField, SerializerMethodField from rest_framework.request import Request diff --git a/authentik/flows/api/flows.py b/authentik/flows/api/flows.py index c2a886e4c..58bc76d02 100644 --- a/authentik/flows/api/flows.py +++ b/authentik/flows/api/flows.py @@ -4,8 +4,8 @@ from dataclasses import dataclass from django.core.cache import cache from django.db.models import Model from django.http.response import JsonResponse -from drf_yasg2 import openapi -from drf_yasg2.utils import no_body, swagger_auto_schema +from drf_yasg import openapi +from drf_yasg.utils import no_body, swagger_auto_schema from guardian.shortcuts import get_objects_for_user from rest_framework.decorators import action from rest_framework.request import Request diff --git a/authentik/flows/api/stages.py b/authentik/flows/api/stages.py index 8073e2564..c80a426b5 100644 --- a/authentik/flows/api/stages.py +++ b/authentik/flows/api/stages.py @@ -2,7 +2,7 @@ from typing import Iterable from django.urls import reverse -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework import mixins from rest_framework.decorators import action from rest_framework.request import Request diff --git a/authentik/flows/views.py b/authentik/flows/views.py index 9020894c6..3b3e2225f 100644 --- a/authentik/flows/views.py +++ b/authentik/flows/views.py @@ -10,8 +10,8 @@ from django.template.response import TemplateResponse from django.utils.decorators import method_decorator from django.views.decorators.clickjacking import xframe_options_sameorigin from django.views.generic import View -from drf_yasg2 import openapi -from drf_yasg2.utils import no_body, swagger_auto_schema +from drf_yasg import openapi +from drf_yasg.utils import no_body, swagger_auto_schema from rest_framework.permissions import AllowAny from rest_framework.views import APIView from structlog.stdlib import BoundLogger, get_logger diff --git a/authentik/outposts/api/outpost_service_connections.py b/authentik/outposts/api/outpost_service_connections.py index d8ed4bd7d..b638bde55 100644 --- a/authentik/outposts/api/outpost_service_connections.py +++ b/authentik/outposts/api/outpost_service_connections.py @@ -3,7 +3,7 @@ from dataclasses import asdict from django.db.models.base import Model from django.urls import reverse -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework.decorators import action from rest_framework.fields import BooleanField, CharField, SerializerMethodField from rest_framework.request import Request diff --git a/authentik/outposts/api/outposts.py b/authentik/outposts/api/outposts.py index f908e14ff..cd185bb96 100644 --- a/authentik/outposts/api/outposts.py +++ b/authentik/outposts/api/outposts.py @@ -1,6 +1,6 @@ """Outpost API Views""" from django.db.models import Model -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework.decorators import action from rest_framework.fields import BooleanField, CharField, DateTimeField from rest_framework.request import Request diff --git a/authentik/policies/api.py b/authentik/policies/api.py index 3eb1f0a84..ce50695fa 100644 --- a/authentik/policies/api.py +++ b/authentik/policies/api.py @@ -3,7 +3,7 @@ from django.core.cache import cache from django.core.exceptions import ObjectDoesNotExist from django.http.response import HttpResponseBadRequest from django.urls import reverse -from drf_yasg2.utils import no_body, swagger_auto_schema +from drf_yasg.utils import no_body, swagger_auto_schema from rest_framework import mixins from rest_framework.decorators import action from rest_framework.request import Request diff --git a/authentik/providers/oauth2/api/provider.py b/authentik/providers/oauth2/api/provider.py index 8a5a2e271..2e9046529 100644 --- a/authentik/providers/oauth2/api/provider.py +++ b/authentik/providers/oauth2/api/provider.py @@ -1,6 +1,6 @@ """OAuth2Provider API Views""" from django.urls import reverse -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework.decorators import action from rest_framework.fields import ReadOnlyField from rest_framework.generics import get_object_or_404 diff --git a/authentik/providers/proxy/api.py b/authentik/providers/proxy/api.py index f9374c0b5..ff9fc94a2 100644 --- a/authentik/providers/proxy/api.py +++ b/authentik/providers/proxy/api.py @@ -1,5 +1,5 @@ """ProxyProvider API Views""" -from drf_yasg2.utils import swagger_serializer_method +from drf_yasg.utils import swagger_serializer_method from rest_framework.fields import CharField, ListField, SerializerMethodField from rest_framework.request import Request from rest_framework.response import Response diff --git a/authentik/providers/saml/api.py b/authentik/providers/saml/api.py index 10356f600..052de8b5c 100644 --- a/authentik/providers/saml/api.py +++ b/authentik/providers/saml/api.py @@ -1,5 +1,5 @@ """SAMLProvider API Views""" -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework.decorators import action from rest_framework.fields import ReadOnlyField from rest_framework.request import Request diff --git a/authentik/root/settings.py b/authentik/root/settings.py index e2d2e8755..39fe5439b 100644 --- a/authentik/root/settings.py +++ b/authentik/root/settings.py @@ -126,7 +126,7 @@ INSTALLED_APPS = [ "authentik.stages.user_write.apps.AuthentikStageUserWriteConfig", "rest_framework", "django_filters", - "drf_yasg2", + "drf_yasg", "guardian", "django_prometheus", "channels", @@ -438,7 +438,7 @@ _LOGGING_HANDLER_MAP = { "kubernetes": "INFO", "asyncio": "WARNING", "aioredis": "WARNING", - "drf_yasg2.utils": "WARNING", + "drf_yasg.utils": "WARNING", } for handler_name, level in _LOGGING_HANDLER_MAP.items(): # pyright: reportGeneralTypeIssues=false diff --git a/authentik/sources/ldap/api.py b/authentik/sources/ldap/api.py index 60551bc85..ff4f20674 100644 --- a/authentik/sources/ldap/api.py +++ b/authentik/sources/ldap/api.py @@ -4,7 +4,7 @@ from time import time from django.core.cache import cache from django.db.models.base import Model -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework.decorators import action from rest_framework.fields import DateTimeField from rest_framework.request import Request diff --git a/authentik/sources/saml/api.py b/authentik/sources/saml/api.py index c6ca57bd1..91a4407fb 100644 --- a/authentik/sources/saml/api.py +++ b/authentik/sources/saml/api.py @@ -1,5 +1,5 @@ """SAMLSource API Views""" -from drf_yasg2.utils import swagger_auto_schema +from drf_yasg.utils import swagger_auto_schema from rest_framework.decorators import action from rest_framework.request import Request from rest_framework.response import Response diff --git a/swagger.yaml b/swagger.yaml index e423dee30..2ed98d16c 100755 --- a/swagger.yaml +++ b/swagger.yaml @@ -27,7 +27,7 @@ paths: parameters: [] responses: '200': - description: Login Metrics per 1h + description: '' schema: $ref: '#/definitions/LoginMetrics' '403': @@ -44,9 +44,8 @@ paths: parameters: [] responses: '200': - description: Serialize TaskInfo and TaskResult + description: '' schema: - description: '' type: array items: $ref: '#/definitions/Task' @@ -108,7 +107,7 @@ paths: type: integer responses: '200': - description: Get running and latest version. + description: '' schema: $ref: '#/definitions/Version' '403': @@ -180,7 +179,6 @@ paths: results: type: array items: - description: '' type: object properties: {} '403': @@ -1308,9 +1306,8 @@ paths: parameters: [] responses: '200': - description: Coordinates for diagrams + description: '' schema: - description: '' type: array items: $ref: '#/definitions/Coordinate' @@ -1766,7 +1763,7 @@ paths: parameters: [] responses: '200': - description: Show token's current key + description: '' schema: $ref: '#/definitions/TokenView' '403': @@ -2063,9 +2060,7 @@ paths: type: integer responses: '200': - description: Response for the /user/me endpoint, returns the currently active - user (as `user` property) and, if this user is being impersonated, the - original user in the `original` property. + description: '' schema: $ref: '#/definitions/SessionUser' '403': @@ -2117,7 +2112,7 @@ paths: type: integer responses: '200': - description: User Metrics + description: '' schema: $ref: '#/definitions/UserMetrics' '403': @@ -2237,7 +2232,7 @@ paths: parameters: [] responses: '200': - description: Recovery link for a user to reset their password + description: '' schema: $ref: '#/definitions/UserRecovery' '403': @@ -2363,7 +2358,7 @@ paths: $ref: '#/definitions/CertificateGeneration' responses: '200': - description: CertificateKeyPair Serializer + description: '' schema: $ref: '#/definitions/CertificateKeyPair' '400': @@ -2488,7 +2483,7 @@ paths: parameters: [] responses: '200': - description: Get CertificateKeyPair's data + description: '' schema: $ref: '#/definitions/CertificateData' '403': @@ -2516,7 +2511,7 @@ paths: parameters: [] responses: '200': - description: Get CertificateKeyPair's data + description: '' schema: $ref: '#/definitions/CertificateData' '403': @@ -2709,9 +2704,8 @@ paths: default: 15 responses: '200': - description: Response object of Event's top_per_user + description: '' schema: - description: '' type: array items: $ref: '#/definitions/EventTopPerUser' @@ -3358,7 +3352,7 @@ paths: parameters: [] responses: '200': - description: Notification test serializer + description: '' schema: $ref: '#/definitions/NotificationTransportTest' '403': @@ -3629,8 +3623,7 @@ paths: type: string responses: '200': - description: Challenge that gets sent to the client based on which stage - is currently active + description: '' schema: $ref: '#/definitions/Challenge' '403': @@ -3661,8 +3654,7 @@ paths: type: string responses: '200': - description: Challenge that gets sent to the client based on which stage - is currently active + description: '' schema: $ref: '#/definitions/Challenge' '400': @@ -3863,7 +3855,7 @@ paths: type: integer responses: '200': - description: Generic cache stats for an object + description: '' schema: $ref: '#/definitions/Cache' '403': @@ -3986,7 +3978,7 @@ paths: parameters: [] responses: '200': - description: response of the flow's /diagram/ action + description: '' schema: $ref: '#/definitions/FlowDiagram' '403': @@ -4497,9 +4489,8 @@ paths: parameters: [] responses: '200': - description: Outpost health status + description: '' schema: - description: '' type: array items: $ref: '#/definitions/OutpostHealth' @@ -4849,9 +4840,8 @@ paths: type: integer responses: '200': - description: Types of an object that can be created + description: '' schema: - description: '' type: array items: $ref: '#/definitions/TypeCreate' @@ -4973,7 +4963,7 @@ paths: parameters: [] responses: '200': - description: Serializer for Service connection state + description: '' schema: $ref: '#/definitions/ServiceConnectionState' '403': @@ -5524,7 +5514,7 @@ paths: type: integer responses: '200': - description: Generic cache stats for an object + description: '' schema: $ref: '#/definitions/Cache' '403': @@ -5571,9 +5561,8 @@ paths: type: integer responses: '200': - description: Types of an object that can be created + description: '' schema: - description: '' type: array items: $ref: '#/definitions/TypeCreate' @@ -7740,9 +7729,8 @@ paths: type: integer responses: '200': - description: Types of an object that can be created + description: '' schema: - description: '' type: array items: $ref: '#/definitions/TypeCreate' @@ -8524,9 +8512,8 @@ paths: type: integer responses: '200': - description: Types of an object that can be created + description: '' schema: - description: '' type: array items: $ref: '#/definitions/TypeCreate' @@ -8844,7 +8831,7 @@ paths: parameters: [] responses: '200': - description: OAuth2 Provider Metadata serializer + description: '' schema: $ref: '#/definitions/OAuth2ProviderSetupURLs' '403': @@ -9265,7 +9252,7 @@ paths: parameters: [] responses: '200': - description: SAML Provider Metadata serializer + description: '' schema: $ref: '#/definitions/SAMLMetadata' '403': @@ -9292,7 +9279,7 @@ paths: parameters: [] responses: '200': - description: Serialize authentik Config into DRF Object + description: '' schema: $ref: '#/definitions/Config' '403': @@ -9399,9 +9386,8 @@ paths: type: integer responses: '200': - description: Types of an object that can be created + description: '' schema: - description: '' type: array items: $ref: '#/definitions/TypeCreate' @@ -9439,9 +9425,8 @@ paths: type: integer responses: '200': - description: Serializer for User settings for stages and sources + description: '' schema: - description: '' type: array items: $ref: '#/definitions/UserSetting' @@ -9705,7 +9690,7 @@ paths: parameters: [] responses: '200': - description: LDAP Sync status + description: '' schema: $ref: '#/definitions/LDAPSourceSyncStatus' '403': @@ -10334,7 +10319,7 @@ paths: parameters: [] responses: '200': - description: SAML Provider Metadata serializer + description: '' schema: $ref: '#/definitions/SAMLMetadata' '403': @@ -10463,9 +10448,8 @@ paths: type: integer responses: '200': - description: Types of an object that can be created + description: '' schema: - description: '' type: array items: $ref: '#/definitions/TypeCreate' @@ -10508,9 +10492,8 @@ paths: type: integer responses: '200': - description: Serializer for User settings for stages and sources + description: '' schema: - description: '' type: array items: $ref: '#/definitions/UserSetting' @@ -14406,7 +14389,6 @@ definitions: description: Error code type: string Coordinate: - description: Coordinates for diagrams type: object properties: x_cord: @@ -14418,23 +14400,21 @@ definitions: type: integer readOnly: true LoginMetrics: - description: Login Metrics per 1h type: object properties: logins_per_1h: - description: '' + description: Get successful logins per hour for the last 24 hours type: array items: $ref: '#/definitions/Coordinate' readOnly: true logins_failed_per_1h: - description: '' + description: Get failed logins per hour for the last 24 hours type: array items: $ref: '#/definitions/Coordinate' readOnly: true Task: - description: Serialize TaskInfo and TaskResult required: - task_name - task_description @@ -14463,12 +14443,11 @@ definitions: - WARNING - ERROR messages: - description: '' type: array items: type: string + x-nullable: true Version: - description: Get running and latest version. type: object properties: version_current: @@ -14488,7 +14467,6 @@ definitions: type: boolean readOnly: true StaticDevice: - description: Serializer for static authenticator devices required: - name type: object @@ -14500,12 +14478,8 @@ definitions: maxLength: 64 minLength: 1 token_set: - description: '' type: array items: - description: 'A single token belonging to a :class:`StaticDevice`. .. attribute:: - device *ForeignKey*: A foreign key to :class:`StaticDevice`. .. attribute:: - token *CharField*: A random string up to 16 characters.' required: - token type: object @@ -14520,13 +14494,6 @@ definitions: maxLength: 16 minLength: 1 device: - description: "A static :class:`~django_otp.models.Device` simply consists\ - \ of random tokens shared by the database and the user. These are\ - \ frequently used as emergency tokens in case a user's normal device\ - \ is lost or unavailable. They can be consumed in any order; each\ - \ token will be removed from the database as soon as it is used. This\ - \ model has no fields of its own, but serves as a container for :class:`StaticToken`\ - \ objects. .. attribute:: token_set The RelatedManager for our tokens." required: - name - user @@ -14570,7 +14537,6 @@ definitions: type: integer readOnly: true TOTPDevice: - description: Serializer for totp authenticator devices required: - name type: object @@ -14586,7 +14552,6 @@ definitions: type: integer readOnly: true WebAuthnDevice: - description: Serializer for WebAuthn authenticator devices required: - name type: object @@ -14606,8 +14571,6 @@ definitions: format: date-time readOnly: true Provider: - title: Provider - description: Provider Serializer required: - name - application @@ -14657,7 +14620,6 @@ definitions: type: string readOnly: true Application: - description: Application Serializer required: - name - slug @@ -14703,15 +14665,7 @@ definitions: 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 @@ -14736,6 +14690,7 @@ definitions: title: Parent type: string format: uuid + x-nullable: true users: type: array items: @@ -14745,8 +14700,6 @@ definitions: title: Attributes type: object User: - title: User - description: User Serializer required: - username - name @@ -14797,7 +14750,6 @@ definitions: title: Attributes type: object Token: - description: Token Serializer required: - identifier - user @@ -14835,7 +14787,6 @@ definitions: title: Expiring type: boolean TokenView: - description: Show token's current key type: object properties: key: @@ -14844,7 +14795,6 @@ definitions: readOnly: true minLength: 1 UserConsent: - description: UserConsent Serializer required: - user - application @@ -14863,9 +14813,6 @@ definitions: application: $ref: '#/definitions/Application' SessionUser: - description: Response for the /user/me endpoint, returns the currently active - user (as `user` property) and, if this user is being impersonated, the original - user in the `original` property. required: - user type: object @@ -14875,29 +14822,27 @@ definitions: original: $ref: '#/definitions/User' UserMetrics: - description: User Metrics type: object properties: logins_per_1h: - description: '' + description: Get successful logins per hour for the last 24 hours type: array items: $ref: '#/definitions/Coordinate' readOnly: true logins_failed_per_1h: - description: '' + description: Get failed logins per hour for the last 24 hours type: array items: $ref: '#/definitions/Coordinate' readOnly: true authorizations_per_1h: - description: '' + description: Get failed logins per hour for the last 24 hours type: array items: $ref: '#/definitions/Coordinate' readOnly: true UserRecovery: - description: Recovery link for a user to reset their password required: - link type: object @@ -14907,7 +14852,6 @@ definitions: type: string minLength: 1 CertificateKeyPair: - description: CertificateKeyPair Serializer required: - name - certificate_data @@ -14950,7 +14894,6 @@ definitions: type: boolean readOnly: true CertificateGeneration: - description: Certificate generation parameters required: - common_name - validity_days @@ -14967,7 +14910,6 @@ definitions: title: Validity days type: integer CertificateData: - description: Get CertificateKeyPair's data type: object properties: data: @@ -14976,7 +14918,6 @@ definitions: readOnly: true minLength: 1 Event: - description: Event Serializer required: - action - app @@ -15016,7 +14957,6 @@ definitions: type: string format: date-time EventTopPerUser: - description: Response object of Event's top_per_user required: - application - counted_events @@ -15028,6 +14968,7 @@ definitions: type: object additionalProperties: type: string + x-nullable: true counted_events: title: Counted events type: integer @@ -15035,7 +14976,6 @@ definitions: title: Unique users type: integer Notification: - description: Notification Serializer type: object properties: pk: @@ -15062,7 +15002,6 @@ definitions: title: Seen type: boolean NotificationRule: - description: NotificationRule Serializer required: - name type: object @@ -15077,10 +15016,8 @@ definitions: type: string minLength: 1 transports: - description: '' type: array items: - description: Action which is executed when a Rule matches required: - name - mode @@ -15121,7 +15058,6 @@ definitions: - warning - alert group: - description: Custom Group model which supports a basic hierarchy required: - name type: object @@ -15144,7 +15080,6 @@ definitions: title: Attributes type: object parent: - description: Custom Group model which supports a basic hierarchy required: - name - parent @@ -15171,10 +15106,10 @@ definitions: title: Parent type: string format: uuid + x-nullable: true readOnly: true readOnly: true NotificationTransport: - description: NotificationTransport Serializer required: - name - mode @@ -15209,19 +15144,16 @@ definitions: into a chat channel. type: boolean NotificationTransportTest: - description: Notification test serializer required: - messages type: object properties: messages: - description: '' type: array items: type: string minLength: 1 Flow: - description: Flow Serializer required: - name - slug @@ -15293,8 +15225,6 @@ definitions: type: string readOnly: true Stage: - title: Stage obj - description: Stage Serializer required: - name type: object @@ -15321,12 +15251,10 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' FlowStageBinding: - description: FlowStageBinding Serializer required: - target - stage @@ -15374,7 +15302,6 @@ definitions: readOnly: true uniqueItems: true ErrorDetail: - description: Serializer for rest_framework's error messages required: - string - code @@ -15389,8 +15316,6 @@ definitions: type: string minLength: 1 Challenge: - description: Challenge that gets sent to the client based on which stage is currently - active required: - type type: object @@ -15418,16 +15343,13 @@ definitions: title: Response errors type: object additionalProperties: - description: '' type: array items: $ref: '#/definitions/ErrorDetail' ChallengeResponse: - description: Base class for all challenge responses type: object properties: {} Cache: - description: Generic cache stats for an object type: object properties: count: @@ -15435,7 +15357,6 @@ definitions: type: integer readOnly: true FlowDiagram: - description: response of the flow's /diagram/ action type: object properties: diagram: @@ -15444,8 +15365,6 @@ definitions: readOnly: true minLength: 1 OAuth2Provider: - title: Provider - description: OAuth2Provider Serializer required: - name - application @@ -15560,7 +15479,6 @@ definitions: - global - per_provider ExpiringBaseGrantModel: - description: Serializer for BaseGrantModel and ExpiringBaseGrant required: - provider - user @@ -15584,13 +15502,11 @@ definitions: type: string format: date-time scope: - description: '' type: array items: type: string minLength: 1 Outpost: - description: Outpost Serializer required: - name - providers @@ -15612,7 +15528,6 @@ definitions: type: integer uniqueItems: true providers_obj: - description: '' type: array items: $ref: '#/definitions/Provider' @@ -15632,7 +15547,6 @@ definitions: title: config type: object OutpostHealth: - description: Outpost health status type: object properties: last_seen: @@ -15655,8 +15569,7 @@ definitions: type: boolean readOnly: true OpenIDConnectConfiguration: - title: Oidc configuration - description: rest_framework Serializer for OIDC Configuration + description: Embed OpenID Connect provider information required: - issuer - authorization_endpoint @@ -15700,31 +15613,26 @@ definitions: 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 @@ -15792,7 +15700,6 @@ definitions: Header. If not set, the user's Email address is used. type: string ServiceConnection: - description: ServiceConnection Serializer required: - name type: object @@ -15824,7 +15731,6 @@ definitions: type: string readOnly: true TypeCreate: - description: Types of an object that can be created required: - name - description @@ -15844,7 +15750,6 @@ definitions: type: string minLength: 1 ServiceConnectionState: - description: Serializer for Service connection state type: object properties: healthy: @@ -15857,7 +15762,6 @@ definitions: readOnly: true minLength: 1 DockerServiceConnection: - description: DockerServiceConnection Serializer required: - name - url @@ -15911,7 +15815,6 @@ definitions: format: uuid x-nullable: true KubernetesServiceConnection: - description: KubernetesServiceConnection Serializer required: - name type: object @@ -15948,7 +15851,6 @@ definitions: the currently selected context. type: object Policy: - description: Policy Serializer type: object properties: pk: @@ -15982,7 +15884,6 @@ definitions: type: integer readOnly: true PolicyBinding: - description: PolicyBinding Serializer required: - target - order @@ -15994,8 +15895,6 @@ definitions: 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: @@ -16026,7 +15925,6 @@ definitions: group: $ref: '#/definitions/Group' user: - description: Custom User model to allow easier adding of user-based settings required: - password - username @@ -16096,20 +15994,8 @@ definitions: 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 @@ -16130,25 +16016,8 @@ definitions: 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 @@ -16174,11 +16043,8 @@ definitions: 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 @@ -16232,10 +16098,8 @@ definitions: uniqueItems: true readOnly: true ak_groups: - description: '' type: array items: - description: Custom Group model which supports a basic hierarchy required: - name - parent @@ -16262,6 +16126,7 @@ definitions: title: Parent type: string format: uuid + x-nullable: true readOnly: true readOnly: true target: @@ -16283,7 +16148,6 @@ definitions: maximum: 2147483647 minimum: -2147483648 DummyPolicy: - description: Dummy Policy Serializer type: object properties: pk: @@ -16330,7 +16194,6 @@ definitions: maximum: 2147483647 minimum: -2147483648 EventMatcherPolicy: - description: Event Matcher Policy Serializer type: object properties: pk: @@ -16445,7 +16308,6 @@ definitions: - authentik.managed - authentik.core ExpressionPolicy: - description: Group Membership Policy Serializer required: - expression type: object @@ -16485,7 +16347,6 @@ definitions: type: string minLength: 1 HaveIBeenPwendPolicy: - description: Have I Been Pwned Policy Serializer type: object properties: pk: @@ -16529,7 +16390,6 @@ definitions: maximum: 2147483647 minimum: -2147483648 PasswordPolicy: - description: Password Policy Serializer required: - error_message type: object @@ -16598,7 +16458,6 @@ definitions: type: string minLength: 1 PasswordExpiryPolicy: - description: Password Expiry Policy Serializer required: - days type: object @@ -16642,7 +16501,6 @@ definitions: title: Deny only type: boolean ReputationPolicy: - description: Reputation Policy Serializer type: object properties: pk: @@ -16687,7 +16545,6 @@ definitions: maximum: 2147483647 minimum: -2147483648 IPReputation: - description: IPReputation Serializer required: - ip type: object @@ -16711,7 +16568,6 @@ definitions: format: date-time readOnly: true UserReputation: - description: UserReputation Serializer required: - user type: object @@ -16734,7 +16590,6 @@ definitions: format: date-time readOnly: true PropertyMapping: - description: PropertyMapping Serializer required: - name - expression @@ -16766,7 +16621,6 @@ definitions: type: string readOnly: true LDAPPropertyMapping: - description: LDAP PropertyMapping Serializer required: - name - expression @@ -16799,7 +16653,6 @@ definitions: type: string readOnly: true SAMLPropertyMapping: - description: SAMLPropertyMapping Serializer required: - name - saml_name @@ -16836,7 +16689,6 @@ definitions: type: string readOnly: true ScopeMapping: - description: ScopeMapping Serializer required: - name - scope_name @@ -16875,7 +16727,6 @@ definitions: type: string readOnly: true OAuth2ProviderSetupURLs: - description: OAuth2 Provider Metadata serializer type: object properties: issuer: @@ -16903,7 +16754,6 @@ definitions: type: string readOnly: true ProxyProvider: - description: ProxyProvider Serializer required: - name - application @@ -16992,7 +16842,6 @@ definitions: Header. If not set, the user's Email address is used. type: string SAMLProvider: - description: SAMLProvider Serializer required: - name - application @@ -17114,7 +16963,6 @@ definitions: format: uuid x-nullable: true SAMLMetadata: - description: SAML Provider Metadata serializer type: object properties: metadata: @@ -17122,7 +16970,6 @@ definitions: type: string readOnly: true Link: - description: Links returned in Config API type: object properties: href: @@ -17136,7 +16983,6 @@ definitions: readOnly: true minLength: 1 Config: - description: Serialize authentik Config into DRF Object type: object properties: branding_logo: @@ -17150,7 +16996,6 @@ definitions: readOnly: true minLength: 1 ui_footer_links: - description: '' type: array items: $ref: '#/definitions/Link' @@ -17169,7 +17014,6 @@ definitions: type: boolean readOnly: true Source: - description: Source Serializer required: - name - slug @@ -17221,7 +17065,6 @@ definitions: type: string readOnly: true UserSetting: - description: Serializer for User settings for stages and sources required: - object_uid - component @@ -17241,7 +17084,6 @@ definitions: type: string minLength: 1 LDAPSource: - description: LDAP Source Serializer required: - name - slug @@ -17374,7 +17216,6 @@ definitions: format: uuid uniqueItems: true LDAPSourceSyncStatus: - description: LDAP Sync status type: object properties: last_sync: @@ -17383,7 +17224,6 @@ definitions: format: date-time readOnly: true OAuthSource: - description: OAuth Source Serializer required: - name - slug @@ -17482,7 +17322,6 @@ definitions: type: string readOnly: true UserOAuthSourceConnection: - description: OAuth Source Serializer required: - user - source @@ -17505,7 +17344,6 @@ definitions: maxLength: 255 minLength: 1 SAMLSource: - description: SAMLSource Serializer required: - name - slug @@ -17636,7 +17474,6 @@ definitions: type: string minLength: 1 AuthenticatorStaticStage: - description: AuthenticatorStaticStage Serializer required: - name type: object @@ -17663,7 +17500,6 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' @@ -17680,7 +17516,6 @@ definitions: maximum: 2147483647 minimum: -2147483648 AuthenticatorTOTPStage: - description: AuthenticatorTOTPStage Serializer required: - name - digits @@ -17708,7 +17543,6 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' @@ -17726,7 +17560,6 @@ definitions: - 6 - 8 AuthenticatorValidateStage: - description: AuthenticatorValidateStage Serializer required: - name type: object @@ -17753,7 +17586,6 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' @@ -17765,7 +17597,7 @@ definitions: - deny - configure device_classes: - description: '' + description: Device classes which can be used to authenticate type: array items: title: Device classes @@ -17780,7 +17612,6 @@ definitions: format: uuid x-nullable: true AuthenticateWebAuthnStage: - description: AuthenticateWebAuthnStage Serializer required: - name type: object @@ -17807,7 +17638,6 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' @@ -17819,7 +17649,6 @@ definitions: format: uuid x-nullable: true CaptchaStage: - description: CaptchaStage Serializer required: - name - public_key @@ -17848,7 +17677,6 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' @@ -17863,7 +17691,6 @@ definitions: type: string minLength: 1 ConsentStage: - description: ConsentStage Serializer required: - name type: object @@ -17890,7 +17717,6 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' @@ -17907,7 +17733,6 @@ definitions: type: string minLength: 1 DenyStage: - description: DenyStage Serializer required: - name type: object @@ -17934,12 +17759,10 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' DummyStage: - description: DummyStage Serializer required: - name type: object @@ -17966,12 +17789,10 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' EmailStage: - description: EmailStage Serializer required: - name type: object @@ -17998,7 +17819,6 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' @@ -18056,7 +17876,6 @@ definitions: - email/password_reset.html - email/account_confirmation.html IdentificationStage: - description: IdentificationStage Serializer required: - name - user_fields @@ -18084,12 +17903,12 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' user_fields: - description: '' + description: Fields of the user object to match against. (Hold shift to select + multiple options) type: array items: title: User fields @@ -18122,7 +17941,6 @@ definitions: format: uuid x-nullable: true Invitation: - description: Invitation Serializer type: object properties: pk: @@ -18140,7 +17958,6 @@ definitions: description: Optional fixed data to enforce on user enrollment. type: object created_by: - description: Custom User model to allow easier adding of user-based settings required: - password - username @@ -18210,20 +18027,8 @@ definitions: 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 @@ -18244,25 +18049,8 @@ definitions: 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 @@ -18288,11 +18076,8 @@ definitions: 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 @@ -18346,10 +18131,8 @@ definitions: uniqueItems: true readOnly: true ak_groups: - description: '' type: array items: - description: Custom Group model which supports a basic hierarchy required: - name - parent @@ -18376,10 +18159,10 @@ definitions: title: Parent type: string format: uuid + x-nullable: true readOnly: true readOnly: true InvitationStage: - description: InvitationStage Serializer required: - name type: object @@ -18406,7 +18189,6 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' @@ -18417,7 +18199,6 @@ definitions: no invitation is given. type: boolean PasswordStage: - description: PasswordStage Serializer required: - name - backends @@ -18445,12 +18226,11 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' backends: - description: '' + description: Selection of backends to test the password against. type: array items: title: Backends @@ -18471,7 +18251,6 @@ definitions: maximum: 2147483647 minimum: -2147483648 Prompt: - description: Prompt Serializer required: - field_key - label @@ -18522,12 +18301,10 @@ definitions: maximum: 2147483647 minimum: -2147483648 promptstage_set: - description: '' type: array items: $ref: '#/definitions/Stage' PromptStage: - description: PromptStage Serializer required: - name - fields @@ -18555,7 +18332,6 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' @@ -18572,7 +18348,6 @@ definitions: format: uuid uniqueItems: true UserDeleteStage: - description: UserDeleteStage Serializer required: - name type: object @@ -18599,12 +18374,10 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' UserLoginStage: - description: UserLoginStage Serializer required: - name type: object @@ -18631,7 +18404,6 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' @@ -18642,7 +18414,6 @@ definitions: type: string minLength: 1 UserLogoutStage: - description: UserLogoutStage Serializer required: - name type: object @@ -18669,12 +18440,10 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' UserWriteStage: - description: UserWriteStage Serializer required: - name type: object @@ -18701,7 +18470,6 @@ definitions: type: string readOnly: true flow_set: - description: '' type: array items: $ref: '#/definitions/Flow' diff --git a/web/src/api/legacy.ts b/web/src/api/legacy.ts index f433d0b6e..f9f2db98e 100644 --- a/web/src/api/legacy.ts +++ b/web/src/api/legacy.ts @@ -56,10 +56,6 @@ export class AdminURLManager { return `/administration/tokens/${rest}`; } - static eventRules(rest: string): string { - return `/administration/events/rules/${rest}`; - } - } export class UserURLManager {