Skip to content

Ingestion API

NbaCdnError

Bases: RuntimeError

Raised when the NBA CDN returns an unusable response.

NbaCdnRequestGate

Coordinate request pacing and access-denial cooldown across worker threads.

wait_for_request_slot(*, minimum_interval_seconds, interval_jitter_seconds)

Reserve one request slot or fail fast while the CDN circuit is open.

open_circuit(*, cooldown_seconds, reason)

Block new request slots for at least the requested cooldown.

RawJsonCache

Byte-preserving file cache for raw NBA source responses.

NbaCdnClient

Small direct client for NBA CDN liveData endpoints.

NbaStatsEndpoint

Bases: StrEnum

Direct NBA Stats game endpoints retained by the historical cache.

NbaStatsError

Bases: RuntimeError

Raised when an NBA Stats response cannot be retained as a valid artifact.

NbaStatsRequestGate

Coordinate Stats request pacing and access-denial cooldown across threads.

wait_for_request_slot(*, minimum_interval_seconds, interval_jitter_seconds)

Reserve one process-wide request slot or fail while the circuit is open.

open_circuit(*, cooldown_seconds, reason)

Block new request slots for at least the requested cooldown.

StatsCachedResponse

Bases: BaseModel

Parsed NBA Stats response plus the exact bytes received from the source.

StatsCacheMetadata

Bases: BaseModel

Provenance sidecar for one byte-preserved NBA Stats response.

NbaStatsRawCache

Byte-preserving cache isolated from the NBA liveData CDN namespace.

NbaStatsClient

Direct client for archived NBA Stats game endpoints.

stats_endpoint_parameters(endpoint, game_id)

Return the explicit official query contract for one endpoint.

validate_stats_payload(payload, endpoint, game_id)

Validate identity and minimum endpoint structure before caching.