Releases · openfga/python-sdk

v0.10.0

0.10.0 (2026-03-24)

  • feat: add execute_api_request and execute_streamed_api_request methods to OpenFgaClient and OpenFgaApi for making arbitrary HTTP requests to any OpenFGA API endpoint with full auth, retry, and telemetry support (#252) - thanks @kcbiradar
  • Add py.typed marker for better mypy support #251 - thanks @manuel-lang

Breaking Changes

  • The _return_http_data_only, _preload_content, _request_auth, async_req, and _request_timeout kwargs have been removed from all OpenFgaApi and SyncOpenFgaApi endpoint methods. These were internal implementation details not intended for external use. _return_http_data_only is now hardcoded to True; all endpoint methods return the deserialized response object directly. Users relying on _with_http_info methods returning a (data, status, headers) tuple should use execute_api_request instead.

What's Changed

New Contributors

Full Changelog: v0.9.9...v0.10.0

v0.9.9

v0.9.8

0.9.8 (2025-11-04)

  • feat: add support for conflict options for Write operations: (#235)
    The client now supports setting ConflictOptions on ClientWriteOptions to control behavior when writing duplicate tuples or deleting non-existent tuples. This feature requires OpenFGA server v1.10.0 or later.
    See Conflict Options for Write Operations for more.
    • on_duplicate for handling duplicate tuple writes (ERROR or IGNORE)
    • on_missing for handling deletes of non-existent tuples (ERROR or IGNORE)

What's Changed

New Contributors

Full Changelog: v0.9.7...v0.9.8

v0.9.7

0.9.7 (2025-10-06)

  • feat: headers configuration property (#233)
  • fix: per-request custom header precedence (#230)

Full Changelog: v0.9.6...v0.9.7

v0.9.6

0.9.6 (2025-09-15)

  • fix: reuse ssl context in the sync client (#222) - thanks @wadells!
  • feat: add OAuth2 scopes parameter support to CredentialConfiguration (#213) - thanks @SoulPancake
  • chore: modernize packaging - thanks @abhiaagarwal

Full Changelog

  • chore: update readme import error by @carlastabile in #202
  • Update SECURITY-INSIGHTS by @aaguiarz in #203
  • Potential fix for code scanning alert no. 1: Workflow does not contain permissions by @aaguiarz in #204
  • Potential fix for code scanning alert no. 2: Workflow does not contain permissions by @aaguiarz in #205
  • Potential fix for code scanning alert no. 3: Workflow does not contain permissions by @aaguiarz in #206
  • chore(ci): remove semgrep workflow by @rhamzeh in #208
  • Create scorecard.yml by @aaguiarz in #209
  • ci: update dependabot config by @evansims in #211
  • chore(deps): bump the dependencies group with 3 updates by @dependabot[bot] in #212
  • chore(deps): update dependencies by @evansims in #210
  • feat: add OAuth2 scopes parameter support to CredentialConfiguration by @SoulPancake in #213
  • chore: sync sdk generator changes by @rhamzeh in #221
  • fix: reuse ssl context in the sync client by @rhamzeh in #222
  • chore: move to packaging with pyproject.toml by @rhamzeh in #220
  • release: v0.9.6 by @rhamzeh in #223
  • fix(ci): fix build with uv by @rhamzeh in #225

New Contributors

Full Changelog: v0.9.5...v0.9.6

v0.9.5

v0.9.4

0.9.4 (2025-04-30)

  • feat: support List Stores name filter (#181)
  • feat: fix and improve retries and rate limit handling. (#176) - thanks @GMorris-professional
    The SDK now respects the rate limit headers (Retry-After) returned by the server and will retry the request after the specified time.
    If the header is not sent or on network errors, it will fall back to exponential backoff.
  • feat: allow more user customizations for the token issuer (#186) - thanks @manuel-lang
  • fix: ListRelations should not swallow errors (#183)
  • fix: urllib3 compatibility < v2 (#187)

v0.9.3

0.9.3 (2025-03-26)

  • fix: urllib3 compatibility < v2 (#179)

v0.9.2

0.9.2 (2025-03-25)

Fixed:

  • Resolve some bugs with telemetry attributes and metrics tracking #177
  • Resolved the REST client erroneously closing after a stream request is made #172

v0.9.1

0.9.1 (2025-01-23)

Added:

  • feat: add /streamed-list-objects endpoint support (#163)
  • feat: add contextual_tuples support for /expand endpoint requests (#164)