Skip to main content
Version: 2.x

bursar.CreditsServiceOptions

class bursar.CreditsServiceOptions(*, logger=None, instrumentation=None, analytics=None, usage_store=None, policy='strict_prepaid', overdraft_floor=None, max_concurrent=None, low_balance=None, default_ttl_seconds=600, lazy_expiry=False, catalog_cache_ttl_ms=300000, post_deduction=None)

Bases: _CreditsServiceModel

  • Parameters:
    • logger (Annotated *[*Logger , SkipValidation ( ) ] | None)
    • instrumentation (Annotated [Instrumentation , SkipValidation ( ) ] | None)
    • analytics (UsageAnalyticsStore | None)
    • usage_store (UsageChargeStore | None)
    • policy (Literal [ 'strict_prepaid' , 'overdraft' ])
    • overdraft_floor (Decimal | int | str | None)
    • max_concurrent (Annotated *[*int | None , Strict *(*strict=True ) , Ge *(*ge=1 ) ])
    • low_balance (LowBalanceConfig | None)
    • default_ttl_seconds (Annotated *[*int , Strict *(*strict=True ) , Ge *(*ge=1 ) ])
    • lazy_expiry (Annotated *[*bool , Strict *(*strict=True ) ])
    • catalog_cache_ttl_ms (Annotated *[*int , Strict *(*strict=True ) , Ge *(*ge=0 ) ])
    • post_deduction (Callable [ *[*PostDeductionContext ] , None | Awaitable *[*None ] ] | None)

model_config = {'arbitrary_types_allowed': True, 'extra': 'forbid'}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].