Interface: ApiKeyPoolConfig
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:43
Configuration for an ApiKeyPool instance.
Properties
cooldownMs?
optionalcooldownMs:number
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:45
Cooldown before retrying a quota-exhausted key, a positive number of milliseconds. Default: 15 minutes.
id?
optionalid:string
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:67
The pool's identity for its store and its log lines.
loadTimeoutMs?
optionalloadTimeoutMs:number
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:59
How long ready() waits for the store's load before it carries on with a fresh state. Default: 10 seconds.
logger?
optionallogger:ILogger
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:69
The logger the pool writes its state changes to. Default: the library's key-pool logger.
maxRecheckMs?
optionalmaxRecheckMs:number
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:53
The recheck delay's ceiling. Default: 6 hours.
maxRetryAfterMs?
optionalmaxRetryAfterMs:number
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:55
The longest rest a Retry-After may ask for, a positive number of milliseconds. Default: 1 hour.
primaryWeight?
optionalprimaryWeight:number
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:47
Weight multiplier for the first key under round-robin, a positive whole number. Default: 2. Set to 1 for equal weighting.
probe()?
optionalprobe: (key,kind) =>Promise<KeyProbeResult>
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:63
Probes a failed key off the request path, told the kind of its last failure; without one, failed keys return by time.
Parameters
key
string
kind
KeyFailureKind | undefined
Returns
Promise<KeyProbeResult>
probeTimeoutMs?
optionalprobeTimeoutMs:number
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:57
How long a probe may run before it counts as unknown. Default: 10 seconds.
recheckMs?
optionalrecheckMs:number
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:51
The first recheck delay of a key failed for auth or billing; doubles on each failed return. Default: 30 minutes.
store?
optionalstore:KeyPoolStateStore
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:65
Persists the pool's state; used only with id.
storeTimeoutMs?
optionalstoreTimeoutMs:number
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:61
How long flush() and close() wait for the store's writes. Default: 5 seconds.
strategy?
optionalstrategy:"round-robin"|"ordered"
Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:49
round-robin (default, the first version's behaviour) or ordered (the earliest usable key in the configured order).