Catalog PyPI
PACKAGE EXPLORERView in registry

55tech

PyPI

Python client for the 55Tech REST and WebSocket APIs

55techapibettingbookmakeroddssdk
Versions collected1
Direct dependencies3From release 0.1.0
Last observed20 Oct, 16:03 UTC

README

Version 0.1.0 documentation

55tech

A Python client for the 55Tech REST and WebSocket APIs.

Unofficial: not affiliated with or endorsed by 55Tech.

pip install 55tech

REST

from fiftyfivetech import FiftyFiveTechClient

client = FiftyFiveTechClient(api_key)

markets = client.get_markets(sport_id=10).markets
fixtures = client.get_fixtures(sport_id=10).fixtures
odds = client.get_fixture_odds(fixtures[0].fixture_id, bookmakers=["pinnacle"]).odds

Errors derive from FiftyFiveTechError.

Streaming

import threading
from fiftyfivetech.streaming import FixtureBook, Reconnect, SnapshotRequired, StreamListener

listener = StreamListener()
stream = client.create_stream(listener, channels=["odds", "bookmakers"],
                              bookmakers=["pinnacle"], sport_ids=[10])
threading.Thread(target=stream.start, daemon=True).start()

# Seed each fixture you follow, after the stream is connected
listener.apply_snapshot(client.get_fixture_odds(fixture_id, bookmakers=["pinnacle"]), ["pinnacle"])

while True:
    update = listener.output_queue.get()
    if isinstance(update, FixtureBook):
        if update.is_tradeable("pinnacle"):          # has odds, not stale, not suspended
            record = update.get("pinnacle", outcome_id)
            ...
    elif isinstance(update, SnapshotRequired):
        ...    # updates were missed: call apply_snapshot again for each fixture you follow
    elif isinstance(update, Reconnect):
        stream.stop()    # the gateway is about to close: start() again

The listener merges stream updates and snapshots into one FixtureBook per fixture, keeping the later changed_at per record. remove_fixture frees a finished one.

start() raises FiftyFiveTechSocketError when the connection drops; call it again to reconnect and resume.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
0.1.010 Oct 20263

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
brandon-betdex/55tech-sdk-python

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 16:03 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:bf084c7dc4a76919e3bc3ef716cc696662396bdda91e217b8c6e9e24156db76b