Kognic Authentication
Project description
Kognic Authentication
Python 3 library providing foundations for Kognic Authentication
on top of the requests
or httpx
libraries.
Install with pip install kognic-auth[requests]
or pip install kognic-auth[httpx]
Builds on the standard OAuth 2.0 Client Credentials flow. There are a few ways to provide auth credentials to our api
clients. Kognic Python clients such as in kognic-io
accept an auth
parameter that
can be set explicitly or you can omit it and use environment variables.
There are a few ways to set your credentials in auth
.
- Set the environment variable
KOGNIC_CREDENTIALS
to point to your Api Credentials file. The credentials will contain the Client Id and Client Secret. - Set to the credentials file path like
auth="~/.config/kognic/credentials.json"
- Set environment variables
KOGNIC_CLIENT_ID
andKOGNIC_CLIENT_SECRET
- Set to credentials tuple
auth=(client_id, client_secret)
API clients such as the InputApiClient
accept this auth
parameter.
Under the hood, they commonly use the AuthSession class which is implements a requests
session with automatic token
refresh. An httpx
implementation is also available.
from kognic.auth.requests.auth_session import RequestsAuthSession
sess = RequestsAuthSession()
# make call to some Kognic service with your token. Use default requests
sess.get("https://api.app.kognic.com")
Changelog
3.0.2 (2022-12-07)
- Support read credentials from dict
3.0.0 (2022-09-26)
- Rebranded from Annotell to Kognic.
- Dropped deprecated
FaultTolerantAuthRequestSession
2.0.0 (2022-05-02)
Refactor for backend separation, with optional dependencies for either httpx
or requests
.
1.8.0 (2022-04-12)
- Initial support for httpx (BETA). Solves refresh token expiry by reset without the
FaultTolerantAuthRequestSession
- The library will be refactored by a breaking 2.0 release, and make the same changes to the requests version.
The
authsession
module backed byrequests
is untouched for now.
1.7.0 (2022-04-11)
- Fix compatibility issue with authlib >= 1.0.0. Resetting the auth session failed, when the refresh token had expired.
1.6.0 (2021-02-21)
- Expose underlying
requests.Session
onFaultTolerantAuthRequestSession
- Fix some thread locks
1.5.0 (2020-10-20)
- Add
FaultTolerantAuthRequestSession
that handles token refresh on long running sessions.
1.4.0 (2020-04-16)
- Add support for
auth
parameter, with path to credentials file orAnnotellCredentials
object - Drop support for legacy API token
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for kognic_auth-3.0.2-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4ab831b9522dfaef9960fec1ad1d6fb51a8e666e205fbf09b110fc272cfa20e6 |
|
MD5 | 49251016dc5a0131d6c292d55bdf925b |
|
BLAKE2b-256 | 1b62d1c11e610d755ebb73d2596ea37f2463309804e80fa1962d3b830fa50e70 |