* fix: update dependencies
* fix: query params in url patterns break with httpx later versions, the query parameters are therefore explicitly set on each request
BREAKING CHANGE: removed a couple of unused url patterns
* Consistency for token decoding
* Mark as staticmethod
* Helper function to convert key
* Refactor key handling
* Add tests for validate=False
* Change test name
* Fix failing test
* Remove special case for str
* Some docstring
* docs: missing docstrings
---------
Co-authored-by: Richard Nemeth <ryshoooo@gmail.com>
* Don't use sync functions to introspect token
* One more async
* Fix some spacing
* A few more async functions
* Fix compatibility issue
* Comment
* Formatting
* feat: add optional nonce parameter to the authorization URL requests
* fix: shorten docstring to be below max line length
---------
Co-authored-by: Greg Griffin <greg@lapetussolutions.com>
* fix: Added grant type as openid_connection optional attribute
* fix: Add getter and setter for grant_type
---------
Co-authored-by: Alex Rohozneanu <aro@bigbrother.nl>
* fix: tox.ini config fixed for testenv:check
* feat: functions for updating reource permissions and getting associated policies
* fix: linting issues resolved
* revert: brought back all functions which were mistakenly removed in commit
* fix: linting issue resolved to prevent unintended changes in file
* fix: comments fixed for docs
* fix: async functions created for new functionality
* feat: test cases completed for new functionality
* chore: tox and deps update
---------
Co-authored-by: Richard Nemeth <ryshoooo@gmail.com>
* chore: add async client to connection
* chore: add async client to keycloak openid
* chore: add async client to keycloak uma
* chore: add async client and methods to keycloak admin
* chore: add async tests for connection and uma class
* chore: add async tests for keycloak openid class
* chore: add async tests for keycloak admin class
* chore: update poetry lock
* chore: update poetry lock
* fix: poetry files
* fix: lint issues
* fix: conftest fix
* fix: lint test fix
* fix: lint test fix
* fix: lint test fix
* fix: lint test fix
* fix: lint test fix
* fix: added setuptools
* fix: delete request fix and test cases fix
* fix: email test case
* fix: email test case for older versions
* fix: set correct content type on token endpoint
* fix: async on missing calls
* test: updated tests
* chore: deps
* fix: preserve original bearer
* fix: dont set bearer in refresh token directly
* fix: default content type
* fix: content type for initial access token
* fix: content type for async initial access token
* chore: add divergence test
* chore: add divergence test for uma and conneciton class
* chore: add docs for async module
* fix: sphinx error fixes
* test: verify signature
* test: final divergence tests
---------
Co-authored-by: Richard Nemeth <ryshoooo@gmail.com>
* refactor: incorporate custom headers into default header setup
Modify the default headers construction to merge in custom headers if provided. This change ensures that custom headers, such as Cloudflare access tokens, are included in the request before self.get_token() is called and without overwriting the default headers like 'Authorization' and 'Content-Type'.
* refactor: Fixing linting issue
Fixing linting issue by adding trailing comma to key in dict
* refactor: adding custom headers to KeycloakOpenID
Adding `custom_headers` to KeycloakOpenID instantiation.
When both user credentials and client credentials are supplied, this
library used the grant_type=client_credentials. This fix will instead
retrieve the token with grant_type=password, similar to the Keycloak
admin CLI kcadm.sh.
Most of the methods rely on the role name within python keycloak, which for the vast majority is fine, however there are some role names which cannot be used by the API endpoint as they contain characters that cannot be encoded properly. Therefore this change is to allow the use of the role's id to get, update and delete roles by their id instead.'