Skip to main content

getfluxly (Python)

Server-side Python SDK for GetFluxly. Same surface as the Node SDK so observability across SDKs lives in one mental model.

pip install getfluxly

Quick start (sync)

from getfluxly import Client

client = Client(token="gflux_secret_yourtoken")

client.track("subscription_started",
             external_id="user_42",
             properties={"plan": "pro"})

client.identify(external_id="user_42",
                traits={"email": "x@y.com", "plan": "pro"})

client.alias(user_id="user_42", anonymous_id="anon_a8f3c2")

client.flush()
client.shutdown()  # also runs from atexit

Quick start (async)

from getfluxly import AsyncClient

async with AsyncClient(token="gflux_secret_yourtoken") as ac:
    await ac.track("subscription_started",
                   external_id="user_42",
                   properties={"plan": "pro"})

Defaults

Option Default Notes
flush_at 20 Events queued before forced flush
flush_interval 5.0 Periodic flush cadence, seconds
max_retries 2 Per failed batch
timeout 5.0 Per HTTP request, seconds
max_queue_size 1000 Hard cap, raises queue_overflow

Retries: 408, 425, 429, and 5xx with exponential backoff and +/- 25% jitter. Retry-After is honored. Each batch carries a unique X-Idempotency-Key. Each individual event also carries a stable message_id (UUID v4) generated when the payload is built — the backend uses (project_id, message_id) to deduplicate duplicate deliveries across retries.

Errors

from getfluxly import GFluxError

try:
    client.track("invoice_paid", external_id="user_42")
except GFluxError as e:
    if e.code == "queue_overflow":
        ...  # back-pressure
    elif e.retryable:
        ...  # SDK already retried max_retries times

Full code table at docs.getfluxly.com/snippets/error-table.

Server keys never in browser

Client(token="gflux_secret_...") refuses to construct if it detects a Pyodide / Emscripten runtime, so a server-side script that accidentally ships to the browser fails loudly instead of leaking the key into client traffic.

License

MIT, see LICENSE.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

getfluxly-0.1.2.tar.gz (11.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

getfluxly-0.1.2-py3-none-any.whl (15.0 kB view details)

Uploaded Python 3

File details

Details for the file getfluxly-0.1.2.tar.gz.

File metadata

  • Download URL: getfluxly-0.1.2.tar.gz
  • Upload date:
  • Size: 11.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for getfluxly-0.1.2.tar.gz
Algorithm Hash digest
SHA256 724e28bce98ddec2d7f6487a7ea648644ab6a1a82db45e3b50711c2296e597fb
MD5 84af6bcad444c38c5a6184e31b342fc9
BLAKE2b-256 4562de63feab0acd3fc5e5f9a4c17f61ec5c4d4eee0a57546aef1f4b84ef7494

See more details on using hashes here.

Provenance

The following attestation bundles were made for getfluxly-0.1.2.tar.gz:

Publisher: publish-sdk-python.yml on dineshmiriyala/getfluxly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file getfluxly-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: getfluxly-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 15.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for getfluxly-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 88e7253b492d84e2321818eb826f807b7af155fba84ea3ab34d90f76c55ed90f
MD5 712b48cfe40f4a8ab7dd065d207ca404
BLAKE2b-256 85c5d6f38e87424b260d069acbebea61cdfc7f6daf3766d347670762f22229d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for getfluxly-0.1.2-py3-none-any.whl:

Publisher: publish-sdk-python.yml on dineshmiriyala/getfluxly

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.1.4

2 files

0.1.3

2 files

This release

0.1.2 This release

2 files

0.1.1

2 files

0.1.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page