Metadata-Version: 2.4
Name: kobil-core
Version: 1.0.0
Summary: Shared foundation for the KOBIL SDK family: OAuth token acquisition/caching and an HTTP base for typed clients.
License: MIT
Project-URL: Repository, https://github.com/uveysservetoglu/kobil-sdks
Keywords: kobil,sdk,oauth2,core
Requires-Python: >=3.8
Description-Content-Type: text/markdown

# kobil-core

Shared foundation for the KOBIL SDK family (`kobil-payment`, `kobil-chat`, `kobil-sign`, …).

You normally don't use this directly — the module packages depend on it. Provides:

- **`DefaultTokenProvider`** — OAuth2 `client_credentials` token acquisition with in-memory
  caching (honours `expires_in`). Modes: `post` (form body, default) or `basic`.
- **`KobilError`** — base exception all module exceptions extend (`status_code`, `response_body`).
- **`ServiceClient`** — HTTP base for typed clients (bearer + send + error wrapping; JSON,
  multipart, and binary-download helpers) built on the standard library (`urllib`).
- **`credentials_from_env()`** — reads `KOBIL_TOKEN_ENDPOINT`, `KOBIL_CLIENT_ID`,
  `KOBIL_CLIENT_SECRET`, `KOBIL_TOKEN_AUTH_MODE`.

Pure standard library — no third-party dependencies. Python 3.8+.

## License

MIT
