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.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2aea9da6cc1baf6dfce93ebc654be906848a06c08848c48d95bc6d4030faabbf |
|
MD5 | f03dfdcd104775aab09411677474a3e3 |
|
BLAKE2b-256 | 361d39e08d96d93a0670c8b5091d16d465ff152c9604fdd4900faa2c2e375ed9 |