Skip to main content

Interface: ApiKeyPoolConfig

Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:43

Configuration for an ApiKeyPool instance.

Properties​

cooldownMs?​

optional cooldownMs: 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?​

optional id: string

Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:67

The pool's identity for its store and its log lines.


loadTimeoutMs?​

optional loadTimeoutMs: 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?​

optional logger: 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?​

optional maxRecheckMs: number

Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:53

The recheck delay's ceiling. Default: 6 hours.


maxRetryAfterMs?​

optional maxRetryAfterMs: 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?​

optional primaryWeight: 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()?​

optional probe: (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?​

optional probeTimeoutMs: 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?​

optional recheckMs: 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?​

optional store: KeyPoolStateStore

Defined in: packages/agentos/src/core/providers/ApiKeyPool.ts:65

Persists the pool's state; used only with id.


storeTimeoutMs?​

optional storeTimeoutMs: 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?​

optional strategy: "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).