Skip to content

Rate Limiting

RateLimitConfig

RateLimitConfig(max_per_minute: int = 25, max_per_hour: int = 250)

Configuration for SpaceTrack API rate limiting.

Defines the maximum number of requests allowed per minute and per hour. Defaults to 25 requests/minute and 250 requests/hour (~83% of Space-Track.org's actual limits of 30/min and 300/hour).

Parameters:

Name Type Description Default
max_per_minute int

Maximum requests per rolling 60-second window. Default: 25.

25
max_per_hour int

Maximum requests per rolling 3600-second window. Default: 250.

250
Example
import brahe as bh

# Default conservative limits
config = bh.RateLimitConfig()
print(config.max_per_minute)  # 25
print(config.max_per_hour)    # 250

# Custom limits
config = bh.RateLimitConfig(max_per_minute=10, max_per_hour=100)

# Disable rate limiting
config = bh.RateLimitConfig.disabled()

# Use with client
client = bh.SpaceTrackClient("user@example.com", "password", rate_limit=config)

Initialize instance.

max_per_hour property

max_per_hour: int

Maximum requests per rolling 3600-second window.

max_per_minute property

max_per_minute: int

Maximum requests per rolling 60-second window.

disabled staticmethod

disabled() -> RateLimitConfig

Create a configuration that disables rate limiting.

Returns:

Name Type Description
RateLimitConfig RateLimitConfig

Configuration with no rate limits.

Example
1
2
3
import brahe as bh

config = bh.RateLimitConfig.disabled()

See Also